新增工资/仓储/生产日报等模块,移除旧考勤模块

- 新增 PayRoll(工资)、Wms(仓储)、Prod(车速/缫丝/考勤/丝片检测/丝片台账/纤检日报/质量日报) 模块
- 新增对应 Domain 实体、Application DTO/Service、Api Controller 与前端页面
- 移除旧 Attendance 考勤模块(Controller/Service/Entity/DTO 及 5 个前端页面),由 Prod/Kaoqin 取代
- 调整路由、仪表盘、Lsjl 流丝记录实体与服务
- 更新业务种子数据与 DbSeeder
- 补充工作进度文档 14-27
This commit is contained in:
yanpeng200212
2026-10-27 09:09:57 +08:00
parent 69c4052a64
commit 1f1b184411
119 changed files with 21576 additions and 1668 deletions
@@ -1,87 +0,0 @@
namespace F9WebAiTest.Application.Dtos.Attendance;
public class AttendanceDto
{
public long Id { get; set; }
public long EmployeeId { get; set; }
public string EmployeeName { get; set; }
public string DepartmentName { get; set; }
public DateTime WorkDate { get; set; }
public DateTime? SignInTime { get; set; }
public DateTime? SignOutTime { get; set; }
public string SignInStatus { get; set; }
public string SignOutStatus { get; set; }
public string Remark { get; set; }
}
public class PunchResultDto
{
public string Type { get; set; } // signIn / signOut
public DateTime Time { get; set; }
public string Status { get; set; } // 正常/迟到/早退
public string Message { get; set; }
}
public class AttendanceQueryDto
{
public string Date { get; set; } = ""; // yyyy-MM-dd
public long? DepartmentId { get; set; }
public string Keyword { get; set; } = "";
public int PageIndex { get; set; } = 1;
public int PageSize { get; set; } = 10;
}
public class AttendanceSummaryDto
{
public int NormalDays { get; set; }
public int LateDays { get; set; }
public int EarlyLeaveDays { get; set; }
public int AbsentDays { get; set; }
public int LeaveDays { get; set; }
public int TotalDays { get; set; }
}
public class LeaveRequestDto
{
public long Id { get; set; }
public long EmployeeId { get; set; }
public string EmployeeName { get; set; }
public string DepartmentName { get; set; }
public string Type { get; set; }
public DateTime StartTime { get; set; }
public DateTime EndTime { get; set; }
public string Reason { get; set; }
public string Status { get; set; }
public int CurrentOrderNo { get; set; } // 当前审批到第几步
public string ApproverName { get; set; }
public string ApproveRemark { get; set; }
public DateTime? ApprovedAt { get; set; }
public DateTime CreatedAt { get; set; }
public List<LeaveApproverDto> Approvers { get; set; } = new(); // 审批流程节点
}
public class LeaveApproverDto
{
public long Id { get; set; }
public long ApproverId { get; set; }
public string ApproverName { get; set; }
public int OrderNo { get; set; } // 序号(审批顺序)
public string Status { get; set; } // 待审批/已批准/已驳回
public string ApproveRemark { get; set; }
public DateTime? ApprovedAt { get; set; }
}
public class CreateLeaveDto
{
public string Type { get; set; } = "事假";
public DateTime StartTime { get; set; }
public DateTime EndTime { get; set; }
public string Reason { get; set; } = "";
public List<long> ApproverIds { get; set; } = new(); // 审批人ID列表(顺序=审批顺序)
}
public class ApproveLeaveDto
{
public bool Approved { get; set; }
public string Remark { get; set; } = "";
}
@@ -0,0 +1,131 @@
namespace F9WebAiTest.Application.Dtos.PayRoll;
/// <summary>挡车车头产量计算-列表行</summary>
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; }
/// <summary>质量金额合计(负数为扣款)</summary>
public decimal JineZlTotal { get; set; }
}
/// <summary>挡车车头产量计算-保存行(整账期 + 部门 + 工种全量覆盖)</summary>
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; }
}
/// <summary>整账期保存请求</summary>
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<CalcLdcctSaveItemDto> Items { get; set; } = new();
}
/// <summary>计算请求(一键计算)</summary>
public class CalcLdcctCalcDto
{
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
public long DepId { get; set; }
public long WorktypeId { get; set; }
}
/// <summary>计算结果</summary>
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<string> Warnings { get; set; } = new();
}
@@ -0,0 +1,40 @@
namespace F9WebAiTest.Application.Dtos.PayRoll;
// 考勤统计(CQTJ)依赖配置:薪资配置-账期 / 薪资配置-职工 / 岗位胜任考核
public class ConfZqDto
{
public long Id { get; set; }
public int Year { get; set; }
public int Month { get; set; }
public decimal QsQuanqinDays { get; set; }
public string Memo { get; set; } = "";
}
public class ConfEmployeeDto
{
public long Id { get; set; }
public long EmployeeId { get; set; }
public string EmployeeCode { get; set; } = "";
public string EmployeeName { get; set; } = "";
public long WorktypeId { get; set; }
public string WorktypeName { get; set; } = "";
public decimal HoursFadingBz { get; set; }
public decimal HoursFadingGz { get; set; }
public bool IsXuegong { get; set; }
public string Memo { get; set; } = "";
}
public class GwsrkhDto
{
public long Id { get; set; }
public int Year { get; set; }
public int Month { get; set; }
public long DepId { get; set; }
public string DepName { get; set; } = "";
public long EmployeeId { get; set; }
public string EmployeeCode { get; set; } = "";
public string EmployeeName { get; set; } = "";
public string KhJieguo { get; set; } = "";
public string Memo { get; set; } = "";
}
@@ -0,0 +1,204 @@
namespace F9WebAiTest.Application.Dtos.PayRoll;
// ==================== 薪资配置-工艺庄口 ====================
public class ConfGyzkListItemDto
{
public long Id { get; set; }
public int Year { get; set; }
public int Month { get; set; }
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public string Guige { get; set; } = "";
public decimal QsTaichan { get; set; }
public string QsDengji { get; set; } = "";
public decimal QsDengjifen { get; set; }
public decimal SaoZhe { get; set; }
public int MeiTongJianLiang { get; set; }
public int LuoSiTongShu { get; set; }
public decimal MeiCheSiLiang { get; set; }
public decimal DcgJijianXishu { get; set; }
public decimal CtgJijianXishu { get; set; }
public decimal GyzkLtwxKs { get; set; }
public decimal GyzkLtwxl { get; set; }
public decimal XjChanliangPrice { get; set; }
}
public class ConfGyzkSaveDto
{
public long Id { get; set; }
public int Year { get; set; }
public int Month { get; set; }
public long GyzkId { get; set; }
public string Guige { get; set; } = "";
public decimal QsTaichan { get; set; }
public string QsDengji { get; set; } = "";
public decimal QsDengjifen { get; set; }
public decimal SaoZhe { get; set; }
public int MeiTongJianLiang { get; set; }
public int LuoSiTongShu { get; set; }
public decimal MeiCheSiLiang { get; set; }
public decimal DcgJijianXishu { get; set; }
public decimal CtgJijianXishu { get; set; }
public decimal GyzkLtwxKs { get; set; }
public decimal GyzkLtwxl { get; set; }
public decimal XjChanliangPrice { get; set; }
}
// ==================== 薪资配置-工种 ====================
public class ConfGzListItemDto
{
public long Id { get; set; }
public long WorkTypeId { get; set; }
public string WorkTypeName { get; set; } = "";
public decimal HoursPerday { get; set; }
public decimal QqDaysStandard { get; set; }
public decimal QqHoursMaxQj { get; set; }
public decimal QqHoursDkMinjiaban { get; set; }
public decimal QqHoursDkQingjia { get; set; }
public decimal XgJineQuanqin { get; set; }
public decimal XgJineGangwei { get; set; }
public decimal JineNiangong { get; set; }
public decimal JineQuanqin { get; set; }
public decimal JineGangwei { get; set; }
public decimal JineYuekhJixiao { get; set; }
public decimal JineGwkh { get; set; }
public decimal JineYueticheng { get; set; }
public decimal JineJtkhYear { get; set; }
public decimal JineJisuanjishu { get; set; }
public decimal JineYeban { get; set; }
public decimal JineJiaotongButie { get; set; }
public decimal LiudongJineGuding { get; set; }
public decimal JiaqiJineKuangongKk { get; set; }
public decimal JiaqiJineFadingGz { get; set; }
public decimal JiaqiJineFadingBz { get; set; }
public decimal JiaqiJineHunjiaBz { get; set; }
public decimal JiaqiJineSangjiaBz { get; set; }
public decimal JiaqiJineBingjiaBz { get; set; }
public decimal JiaqiJineLunxiuBz { get; set; }
public decimal JiabanJineBz { get; set; }
public decimal Jiaqi_Jine_TiaoxiuBz { get; set; }
public decimal Jiaqi_Jine_NianjiaBz { get; set; }
public decimal GwsrkhJineQianhege { get; set; }
public decimal GwsrkhJineQiwang { get; set; }
public decimal GwsrkhJineHege { get; set; }
public decimal GwsrkhJineShengren { get; set; }
public decimal GwsrkhJineChaoshengren { get; set; }
public decimal Jiaban_GwsrkhJineQianhege { get; set; }
public decimal Jiaban_GwsrkhJineQiwang { get; set; }
public decimal Jiaban_GwsrkhJineHege { get; set; }
public decimal Jiaban_GwsrkhJineShengren { get; set; }
public decimal Jiaban_GwsrkhJineChaoshengren { get; set; }
}
public class ConfGzSaveDto
{
public long Id { get; set; }
public long WorkTypeId { get; set; }
public decimal HoursPerday { get; set; }
public decimal QqDaysStandard { get; set; }
public decimal QqHoursMaxQj { get; set; }
public decimal QqHoursDkMinjiaban { get; set; }
public decimal QqHoursDkQingjia { get; set; }
public decimal XgJineQuanqin { get; set; }
public decimal XgJineGangwei { get; set; }
public decimal JineNiangong { get; set; }
public decimal JineQuanqin { get; set; }
public decimal JineGangwei { get; set; }
public decimal JineYuekhJixiao { get; set; }
public decimal JineGwkh { get; set; }
public decimal JineYueticheng { get; set; }
public decimal JineJtkhYear { get; set; }
public decimal JineJisuanjishu { get; set; }
public decimal JineYeban { get; set; }
public decimal JineJiaotongButie { get; set; }
public decimal LiudongJineGuding { get; set; }
public decimal JiaqiJineKuangongKk { get; set; }
public decimal JiaqiJineFadingGz { get; set; }
public decimal JiaqiJineFadingBz { get; set; }
public decimal JiaqiJineHunjiaBz { get; set; }
public decimal JiaqiJineSangjiaBz { get; set; }
public decimal JiaqiJineBingjiaBz { get; set; }
public decimal JiaqiJineLunxiuBz { get; set; }
public decimal JiabanJineBz { get; set; }
public decimal Jiaqi_Jine_TiaoxiuBz { get; set; }
public decimal Jiaqi_Jine_NianjiaBz { get; set; }
public decimal GwsrkhJineQianhege { get; set; }
public decimal GwsrkhJineQiwang { get; set; }
public decimal GwsrkhJineHege { get; set; }
public decimal GwsrkhJineShengren { get; set; }
public decimal GwsrkhJineChaoshengren { get; set; }
public decimal Jiaban_GwsrkhJineQianhege { get; set; }
public decimal Jiaban_GwsrkhJineQiwang { get; set; }
public decimal Jiaban_GwsrkhJineHege { get; set; }
public decimal Jiaban_GwsrkhJineShengren { get; set; }
public decimal Jiaban_GwsrkhJineChaoshengren { get; set; }
}
// ==================== 薪资配置-挡车/车头岗位 ====================
public class ConfDcgListItemDto
{
public long Id { get; set; }
public long DepId { get; set; }
public string DepName { get; set; } = "";
public decimal JineJisuanjishu50 { get; set; }
public decimal JineJisuanjishu60 { get; set; }
public decimal JineJisuanjishu70 { get; set; }
public decimal JineJisuanjishu100 { get; set; }
public decimal JineCtg { get; set; }
}
public class ConfDcgSaveDto
{
public long Id { get; set; }
public long DepId { get; set; }
public decimal JineJisuanjishu50 { get; set; }
public decimal JineJisuanjishu60 { get; set; }
public decimal JineJisuanjishu70 { get; set; }
public decimal JineJisuanjishu100 { get; set; }
public decimal JineCtg { get; set; }
}
// ==================== 挡车纤度奖扣 ====================
public class DcxdjkListItemDto
{
public long Id { get; set; }
public string GuiGe { get; set; } = "";
public decimal XianDu { get; set; }
public decimal JiangLi { get; set; }
public decimal KouKuan { get; set; }
}
public class DcxdjkSaveDto
{
public long Id { get; set; }
public string GuiGe { get; set; } = "";
public decimal XianDu { get; set; }
public decimal JiangLi { get; set; }
public decimal KouKuan { get; set; }
}
// ==================== 薪资价格配置 ====================
public class XzjgListItemDto
{
public long Id { get; set; }
public string Group { get; set; } = "";
public string Key { get; set; } = "";
public string Unit { get; set; } = "";
public decimal Price { get; set; }
public string Memo { get; set; } = "";
}
public class XzjgSaveDto
{
public long Id { get; set; }
public string Group { get; set; } = "";
public string Key { get; set; } = "";
public string Unit { get; set; } = "";
public decimal Price { get; set; }
public string Memo { get; set; } = "";
}
@@ -0,0 +1,105 @@
namespace F9WebAiTest.Application.Dtos.Prod;
// ==================== 秤大丝(成筒丝 CDS) ====================
/// <summary>秤大丝列表行(落丝记录 + 秤丝汇总)</summary>
public class CdsListItemDto
{
public long LsjlId { get; set; }
public DateTime WorkDate { get; set; }
public long DeptId { get; set; }
public string DeptName { get; set; } = "";
public int Jizu { get; set; }
public int Huishu { get; set; }
public string Guige { get; set; } = "";
public string ZhuangKouName { get; set; } = "";
public string Yanse { get; set; } = "";
public bool Isbanche { get; set; }
public string IsbancheName { get; set; } = "";
public int Chetaishu { get; set; }
public int ChetaiStart { get; set; }
public int ChetaiEnd { get; set; }
public double Hours { get; set; }
public int Tongshu { get; set; }
public int Meitongjianliang { get; set; }
public int YingchengNum { get; set; } // 应秤数 = 车台数 × 4 × (半车 ? 0.5 : 1)
public bool IsWeighed { get; set; } // 是否已秤
public int Num { get; set; } // 已秤数
public int Siliang { get; set; } // 已秤丝量(g)
public int Jianliang { get; set; } // 茧量(g)
public decimal Saozhe { get; set; } // 缫折
public decimal Taichan { get; set; } // 台产
}
/// <summary>秤大丝称重弹窗数据</summary>
public class CdsEditDto
{
public long LsjlId { get; set; }
public string DeptName { get; set; } = "";
public int Jizu { get; set; }
public int Huishu { get; set; }
public string ZhuangKouName { get; set; } = "";
public string Yanse { get; set; } = "";
public bool Isbanche { get; set; }
public string IsbancheName { get; set; } = "";
public string Guige { get; set; } = "";
public int ChetaiStart { get; set; }
public int ChetaiEnd { get; set; }
public int Chetaishu { get; set; }
public int YingchengNum { get; set; }
public List<CdsChetaiDto> Chetais { get; set; } = new();
}
/// <summary>秤大丝车台明细 DTO</summary>
public class CdsChetaiDto
{
public int Chetaihao { get; set; }
public int Sl1 { get; set; }
public int Sl2 { get; set; }
public int Sl3 { get; set; }
public int Sl4 { get; set; }
public int Num { get; set; } // 个数
public int Siliang { get; set; } // 小计丝量
}
/// <summary>秤大丝保存请求</summary>
public class CdsSaveDto
{
public long LsjlId { get; set; }
public List<CdsChetaiDto> Chetais { get; set; } = new();
}
// ==================== 公量纤度 ====================
/// <summary>公量纤度列表行(落丝记录 + 纤度检验平均纤度 + 公量纤度)</summary>
public class GlxdListItemDto
{
public long LsjlId { get; set; }
public DateTime WorkDate { get; set; }
public long DeptId { get; set; }
public string DeptName { get; set; } = "";
public int Jizu { get; set; }
public int Huishu { get; set; }
public string Guige { get; set; } = "";
public string ZhuangKouName { get; set; } = "";
public string Yanse { get; set; } = "";
public bool Isbanche { get; set; }
public string IsbancheName { get; set; } = "";
public int Chetaishu { get; set; }
public double Avgxiandu { get; set; } // 平均纤度(来自纤度检验)
public decimal Gongliangxiandu { get; set; } // 公量纤度
}
/// <summary>公量纤度批量保存请求</summary>
public class GlxdSaveDto
{
public DateTime Date { get; set; }
public long DeptId { get; set; }
public List<GlxdSaveItemDto> Items { get; set; } = new();
}
public class GlxdSaveItemDto
{
public long LsjlId { get; set; }
public decimal Gongliangxiandu { get; set; }
}
@@ -0,0 +1,129 @@
namespace F9WebAiTest.Application.Dtos.Prod;
// ==================== 丝片检查 ====================
/// <summary>丝片检查列表行</summary>
public class SpjcListItemDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public long DeptId { get; set; }
public string DeptName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public string Guige { get; set; } = "";
public int Pianshu { get; set; }
public int PianshuXuegong { get; set; }
public int QsJiahua { get; set; }
public int QsYouwu { get; set; }
public int QsHeidian { get; set; }
public int QsShangsi { get; set; }
public int QsYetiao { get; set; }
public int QsXiaosipian { get; set; }
public int QsQita { get; set; }
public int QsHeji { get; set; }
public int HsYouwu { get; set; }
public int HsShangsi { get; set; }
public int HsShuangsi { get; set; }
public int HsZhisi { get; set; }
public int HsZhantiao { get; set; }
public int HsYingjiao { get; set; }
public int HsGuojiao { get; set; }
public int HsShouchu { get; set; }
public int HsWuran { get; set; }
public int HsLiansi { get; set; }
public int HsWdmt { get; set; }
public int HsMaoluan { get; set; }
public int HsQita { get; set; }
public int HsHeji { get; set; }
public string Memo { get; set; } = "";
}
/// <summary>丝片检查新增/修改:所有数量前端录入,合计由服务端重算</summary>
public class SpjcSaveDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public long DeptId { get; set; }
public string DeptName { get; set; } = ""; // 仅用于编辑回填显示
public long GyzkId { get; set; }
public string GyzkName { get; set; } = ""; // 仅用于编辑回填显示
public string Guige { get; set; } = "";
public int Pianshu { get; set; }
public int PianshuXuegong { get; set; }
public int QsJiahua { get; set; }
public int QsYouwu { get; set; }
public int QsHeidian { get; set; }
public int QsShangsi { get; set; }
public int QsYetiao { get; set; }
public int QsXiaosipian { get; set; }
public int QsQita { get; set; }
public int HsYouwu { get; set; }
public int HsShangsi { get; set; }
public int HsShuangsi { get; set; }
public int HsZhisi { get; set; }
public int HsZhantiao { get; set; }
public int HsYingjiao { get; set; }
public int HsGuojiao { get; set; }
public int HsShouchu { get; set; }
public int HsWuran { get; set; }
public int HsLiansi { get; set; }
public int HsWdmt { get; set; }
public int HsMaoluan { get; set; }
public int HsQita { get; set; }
public string Memo { get; set; } = "";
}
// ==================== 丝片台帐 ====================
/// <summary>丝片台帐列表行</summary>
public class SptzListItemDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public DateTime DateLast { get; set; }
public int JsShangcun { get; set; }
public int JsXiasi { get; set; }
public int JsJinsi { get; set; }
public int JsSrylJrxz { get; set; }
public int JsJincun { get; set; }
public int FsFsps { get; set; }
public int BsBsps { get; set; }
public int ZlZhengpin { get; set; }
public int ZlTichu { get; set; }
public string Memo { get; set; } = "";
}
/// <summary>丝片台帐新增默认值:上一日本台账 + 按当日「丝片检查」汇总出的整理片数</summary>
public class SptzDefaultsDto
{
public DateTime Date { get; set; }
public DateTime? DateLast { get; set; } // 上一本台账日期(无则为 null)
public int JsShangcun { get; set; } // 上存 = 上一日今存
public DateTime? LatestDate { get; set; } // 当前最新台账日期(用于「无法新增该日期台账」校验)
public int ZlTichu { get; set; } // 剔除片数 = Σ丝片检查前缫合计
public int ZlZhengpin { get; set; } // 正品片数 = Σ(总片数 + 学工片数) − 剔除
public bool HasSpjc { get; set; } // 当日是否存在丝片检查数据
}
/// <summary>丝片台帐保存请求</summary>
public class SptzSaveDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public DateTime DateLast { get; set; }
public int JsShangcun { get; set; }
public int JsXiasi { get; set; }
public int JsJinsi { get; set; }
public int FsFsps { get; set; }
public int BsBsps { get; set; }
public int ZlZhengpin { get; set; }
public int ZlTichu { get; set; }
public string Memo { get; set; } = "";
}
@@ -0,0 +1,187 @@
namespace F9WebAiTest.Application.Dtos.Prod;
// ==================== 考勤登记(CQDJ) ====================
/// <summary>登记明细(读 / 写共用)</summary>
public class CqdjItemDto
{
public long Id { get; set; }
public long DepId { get; set; } // 出勤部门(流动 / 代班时可为其它部门)
public long WorktypeId { get; set; } // 出勤工种
public int TypeCq { get; set; } // 出勤类型(1正常 2请假 3流动 4加班 5代班 6外派 7旷工 8工伤)
public int TypeQj { get; set; } // 请假类型(0无 1事假 2病假 3产假 4婚假 5丧假 6公假 7年假 9调休 10轮休)
public decimal Hours { get; set; }
public string Jizu { get; set; } = "";
public string CtStart { get; set; } = "";
public string CtEnd { get; set; } = "";
public int DangcheNum { get; set; }
public string Memo { get; set; } = "";
}
/// <summary>登记行(一人一天)</summary>
public class CqdjRowDto
{
public long Id { get; set; } // 已保存的主表 Id(0=未保存)
public long EmployeeId { get; set; }
public string EmployeeCode { 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 int Banci { get; set; }
public bool IsXuegong { get; set; } // 学工(未转正)
public bool Saved { get; set; } // 是否已入库
public decimal HoursStandard { get; set; }
public decimal HoursCq { get; set; }
public decimal HoursQj { get; set; }
public decimal HoursLd { get; set; }
public decimal HoursJb { get; set; }
public decimal HoursDb { get; set; }
public decimal HoursWp { get; set; }
public decimal HoursKg { get; set; }
public decimal HoursGs { get; set; }
public int CsYeban { get; set; }
public string Memo { get; set; } = "";
public List<CqdjItemDto> Items { get; set; } = new();
}
/// <summary>登记查询结果(一次性返回整组,前端整组编辑)</summary>
public class CqdjViewDto
{
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public long DepId { get; set; }
public long WorktypeId { get; set; }
public int Banci { get; set; }
public List<CqdjRowDto> Rows { get; set; } = new();
}
/// <summary>整组保存入参(先软删该 日期+部门+工种+班次 的旧登记,再整批新增)</summary>
public class CqdjSaveDto
{
public DateTime Date { get; set; }
public long DepId { get; set; }
public long WorktypeId { get; set; } // 0 = 全部工种
public int Banci { get; set; }
public List<CqdjSaveRowDto> Rows { get; set; } = new();
}
public class CqdjSaveRowDto
{
public long EmployeeId { get; set; }
public long DepId { get; set; } // 0 = 取职工所在部门
public long WorktypeId { get; set; } // 0 = 取职工工种
public bool IsXuegong { get; set; }
public decimal HoursStandard { get; set; }
public int CsYeban { get; set; }
public string Memo { get; set; } = "";
public List<CqdjItemDto> Items { get; set; } = new();
}
/// <summary>「添加职工」下拉选项</summary>
public class CqdjEmpOptionDto
{
public long Id { get; set; }
public string Code { get; set; } = "";
public string Name { get; set; } = "";
public long DepId { get; set; }
public string DepName { get; set; } = "";
public long WorktypeId { get; set; }
public string WorktypeName { get; set; } = "";
public bool IsXuegong { get; set; }
}
// ==================== 考勤统计(CQTJ) ====================
/// <summary>统计行(一人一行,月快照)</summary>
public class CqtjRowDto
{
public long Id { get; set; }
public int Year { get; set; }
public int Month { get; set; }
public long DepId { get; set; }
public string DepName { get; set; } = "";
public long WorktypeId { get; set; }
public string WorktypeName { get; set; } = "";
public long EmployeeId { get; set; }
public string EmployeeCode { get; set; } = "";
public string EmployeeName { get; set; } = "";
public decimal DaysCqStandard { get; set; }
public decimal DaysCqActual { get; set; }
public decimal CqTianci { get; set; }
public decimal HoursCq { get; set; }
public decimal HoursQj { get; set; }
public decimal HoursLd { get; set; }
public decimal HoursJb { get; set; }
public decimal HoursDb { get; set; }
public decimal HoursWp { get; set; }
public decimal HoursKg { get; set; }
public int CsYeban { get; set; }
public decimal HoursQjShijia { get; set; }
public decimal HoursQjBj { get; set; }
public decimal HoursQjHj { get; set; }
public decimal HoursQjCj { get; set; }
public decimal HoursQjLx { get; set; }
public decimal HoursQjSangjia { get; set; }
public decimal HoursQjGj { get; set; }
public decimal HoursQjNj { get; set; }
public decimal HoursQjTx { get; set; }
public decimal HoursXgCq { get; set; }
public decimal HoursXgJiaban { get; set; }
public decimal HoursFadingjiaqi { get; set; }
public decimal HoursQjQqmc { get; set; }
public decimal HoursQjQqcal { get; set; }
public decimal JineQuanqin { get; set; }
public decimal JineJb { get; set; }
public decimal JineLiudong { get; set; }
public decimal JineDaiban { get; set; }
public decimal JineYb { get; set; }
public decimal JineKgKk { get; set; }
public decimal JineJqBzHj { get; set; }
public decimal JineJqBzBj { get; set; }
public decimal JineJqBzLx { get; set; }
public decimal JineJqBzSangjia { get; set; }
public decimal JineJqBzFading { get; set; }
public decimal JineJqBzTxnj { get; set; }
public decimal JineJqBz { get; set; }
public string Memo { get; set; } = "";
}
/// <summary>统计整组保存(先软删该 年/月/部门 的旧快照,再整批新增)</summary>
public class CqtjSaveDto
{
public int Year { get; set; }
public int Month { get; set; }
public long DepId { get; set; }
public List<CqtjRowDto> Rows { get; set; } = new();
}
/// <summary>一键生成入参</summary>
public class CqtjGenerateDto
{
public int Year { get; set; }
public int Month { get; set; }
}
/// <summary>统计录入视图(附加展示用的账期信息)</summary>
public class CqtjViewDto
{
public int Year { get; set; }
public int Month { get; set; }
public long DepId { get; set; }
public string DepName { get; set; } = "";
public decimal QsQuanqinDays { get; set; } // 薪资配置账期的前缫出勤天数
public bool Exists { get; set; } // true=库中已有快照,false=本次实时算出
public List<CqtjRowDto> Rows { get; set; } = new();
}
@@ -18,6 +18,8 @@ public class LsjlDto
public bool Isbanche { get; set; }
public string IsbancheName { get; set; }
public double Hours { get; set; }
public int Tongshu { get; set; }
public int Meitongjianliang { get; set; }
public string Guige { get; set; }
public double Chesu { get; set; }
}
@@ -36,6 +38,8 @@ public class LsjlCreateDto
public int Chetaishu { get; set; }
public bool Isbanche { get; set; }
public double Hours { get; set; }
public int Tongshu { get; set; }
public int Meitongjianliang { get; set; }
public string Guige { get; set; } = "";
public double Chesu { get; set; }
}
@@ -0,0 +1,228 @@
using F9WebAiTest.Domain.Entities.Prod;
namespace F9WebAiTest.Application.Dtos.Prod;
// ==================== 选茧日报 ====================
public class XjrbListDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public int YlLrBaoshu { get; set; }
public decimal YlLrZhongliang { get; set; }
public int LtjBaoshu { get; set; }
public decimal LtjZhongliang { get; set; }
public int HwjjBaoshu { get; set; }
public decimal HwjjZhongliang { get; set; }
public int LjjBaoshu { get; set; }
public decimal LjjZhongliang { get; set; }
public int MjBaoshu { get; set; }
public decimal MjZhongliang { get; set; }
public int SgjBaoshu { get; set; }
public decimal SgjZhongliang { get; set; }
public int XjjBaoshu { get; set; }
public decimal XjjZhongliang { get; set; }
public int JyBaoshu { get; set; }
public decimal JyZhongliang { get; set; }
public int JhBaoshu { get; set; }
public decimal JhZhongliang { get; set; }
public decimal TotalZhongliang { get; set; }
public int ThBaoshu { get; set; }
public decimal ThZhongliang { get; set; }
public decimal LiantongRate { get; set; }
public decimal Yingkui { get; set; }
}
public class XjrbSaveDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public long GyzkId { get; set; }
public int YlLrBaoshu { get; set; }
public decimal YlLrZhongliang { get; set; }
public int LtjBaoshu { get; set; }
public decimal LtjZhongliang { get; set; }
public int HwjjBaoshu { get; set; }
public decimal HwjjZhongliang { get; set; }
public int LjjBaoshu { get; set; }
public decimal LjjZhongliang { get; set; }
public int MjBaoshu { get; set; }
public decimal MjZhongliang { get; set; }
public int SgjBaoshu { get; set; }
public decimal SgjZhongliang { get; set; }
public int XjjBaoshu { get; set; }
public decimal XjjZhongliang { get; set; }
public int JyBaoshu { get; set; }
public decimal JyZhongliang { get; set; }
public int JhBaoshu { get; set; }
public decimal JhZhongliang { get; set; }
public int ThBaoshu { get; set; }
public decimal ThZhongliang { get; set; }
public decimal LiantongRate { get; set; }
public decimal Yingkui { get; set; }
}
/// <summary>盈亏 / 联统率计算结果(对齐 F9 GetXjrbCountYingkuiQuery 返回字典)</summary>
public class XjrbYingkuiDto
{
public decimal LiantongRate { get; set; }
public decimal Yingkui { get; set; }
public DateTime StartDate { get; set; }
public string StartDateText => StartDate.ToString("yyyy-MM-dd");
}
// ==================== 选茧计划 ====================
public class XjrbPlanListDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public long YllingliaodanId { get; set; }
public string YllingliaodanCode { get; set; } = "";
public int YlBaoshu { get; set; }
public decimal YlZhongliang { get; set; }
public int LtjBaoshu { get; set; }
public decimal LtjZhongliang { get; set; }
public int HwjjBaoshu { get; set; }
public decimal HwjjZhongliang { get; set; }
public int WjjBaoshu { get; set; }
public decimal WjjZhongliang { get; set; }
public int SgjBaoshu { get; set; }
public decimal SgjZhongliang { get; set; }
public int XjjBaoshu { get; set; }
public decimal XjjZhongliang { get; set; }
public int JyBaoshu { get; set; }
public decimal JyZhongliang { get; set; }
public int JhBaoshu { get; set; }
public decimal JhZhongliang { get; set; }
public decimal TotalZhongliang { get; set; }
public decimal LiantongRate { get; set; }
public decimal Yingkui { get; set; }
public bool IsFinish { get; set; }
}
public class XjrbPlanSaveDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public long GyzkId { get; set; }
public long YllingliaodanId { get; set; }
public int YlBaoshu { get; set; }
public decimal YlZhongliang { get; set; }
public int LtjBaoshu { get; set; }
public decimal LtjZhongliang { get; set; }
public int HwjjBaoshu { get; set; }
public decimal HwjjZhongliang { get; set; }
public int WjjBaoshu { get; set; }
public decimal WjjZhongliang { get; set; }
public int SgjBaoshu { get; set; }
public decimal SgjZhongliang { get; set; }
public int XjjBaoshu { get; set; }
public decimal XjjZhongliang { get; set; }
public int JyBaoshu { get; set; }
public decimal JyZhongliang { get; set; }
public int JhBaoshu { get; set; }
public decimal JhZhongliang { get; set; }
}
// ==================== 选茧计划明细 ====================
public class XjrbItemDto
{
public long Id { get; set; }
public long XjrbPlanId { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public int LtjBaoshu { get; set; }
public decimal LtjZhongliang { get; set; }
public int HwjjBaoshu { get; set; }
public decimal HwjjZhongliang { get; set; }
public int WjjBaoshu { get; set; }
public decimal WjjZhongliang { get; set; }
public int SgjBaoshu { get; set; }
public decimal SgjZhongliang { get; set; }
public int XjjBaoshu { get; set; }
public decimal XjjZhongliang { get; set; }
public int JyBaoshu { get; set; }
public decimal JyZhongliang { get; set; }
public int JhBaoshu { get; set; }
public decimal JhZhongliang { get; set; }
public decimal TotalZhongliang { get; set; }
public bool IsFinish { get; set; }
}
public class XjrbItemSaveDto
{
public long Id { get; set; }
public long XjrbPlanId { get; set; }
public DateTime Date { get; set; }
public int LtjBaoshu { get; set; }
public decimal LtjZhongliang { get; set; }
public int HwjjBaoshu { get; set; }
public decimal HwjjZhongliang { get; set; }
public int WjjBaoshu { get; set; }
public decimal WjjZhongliang { get; set; }
public int SgjBaoshu { get; set; }
public decimal SgjZhongliang { get; set; }
public int XjjBaoshu { get; set; }
public decimal XjjZhongliang { get; set; }
public int JyBaoshu { get; set; }
public decimal JyZhongliang { get; set; }
public int JhBaoshu { get; set; }
public decimal JhZhongliang { get; set; }
public bool IsFinish { get; set; }
}
// ==================== 选茧班组 ====================
public class XjpbBanzuDto
{
public long Id { get; set; }
public string Banci { get; set; } = "";
public int Zu { get; set; }
}
public class XjpbBanzuZhigongDto
{
public long Id { get; set; }
public long BanzuId { get; set; }
public string Banci { get; set; } = "";
public int Zu { get; set; }
public long YgId { get; set; }
public string YgName { get; set; } = "";
public string YgPhone { get; set; } = "";
public int Sort { get; set; }
}
/// <summary>班组「编辑录入」保存项:职工 + 是否选中 + 组别(对齐 F9 XjpbBanzuZhigongCombinedDto)</summary>
public class XjpbBanzuZhigongSaveDto
{
public long Id { get; set; }
public string Banci { get; set; } = "";
public int Zu { get; set; }
public long YgId { get; set; }
public string YgName { get; set; } = "";
public string YgPhone { get; set; } = "";
public int Sort { get; set; }
public bool Selected { get; set; }
}
@@ -0,0 +1,111 @@
using F9WebAiTest.Domain.Enums.SYS.Employees;
namespace F9WebAiTest.Application.Dtos.Prod;
// ==================== 煮茧日报 ====================
/// <summary>煮茧日报列表行(主表 + 机组桶数合计)</summary>
public class ZjrbReadDto_View
{
public long Id { get; set; }
public DateTime Date { get; set; }
public long DepId { get; set; }
public string DepName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public string Guige { get; set; } = "";
public DateTime? LastDate { get; set; }
public int StandardLuositongshu { get; set; }
public int MeitongJianliang { get; set; }
public int BaoshuShangcun { get; set; }
public int BaoshuLingru { get; set; }
public int BaoshuSaosi { get; set; }
public int BaoshuTuihui { get; set; }
public int BaoshuJincun { get; set; }
public decimal JianliangShangcun { get; set; }
public decimal JianliangLingru { get; set; }
public decimal JianliangSaosi { get; set; }
public decimal JianliangTuihui { get; set; }
public decimal JianliangJincun { get; set; }
// 机组桶数合计(列表下方明细/列展示用)
public int TongshuShangcun { get; set; }
public int TongshuJinsao { get; set; }
public int TongshuJinluo { get; set; }
public int TongshuJincun { get; set; }
public decimal JizuSaosiHours { get; set; }
}
/// <summary>煮茧日报-机组成员</summary>
public class ZjrbJizuDto
{
public long Id { get; set; }
public long ZjrbId { get; set; }
public int Jizu { get; set; }
public decimal JizuSaosiHours { get; set; }
public int TongshuShangcun { get; set; }
/// <summary>甲班今缫桶数(存于机组班次表)</summary>
public int TongshuJinsaoJiaban { get; set; }
/// <summary>乙班今缫桶数(存于机组班次表)</summary>
public int TongshuJinsaoYiban { get; set; }
/// <summary>今缫桶数 = 甲班 + 乙班(只读合计)</summary>
public int TongshuJinsao { get; set; }
public int TongshuJinluo { get; set; }
public int TongshuJincun { get; set; }
}
/// <summary>煮茧日报-班次成员(包数 / 重量)</summary>
public class ZjrbBanciDto
{
public long Id { get; set; }
public long ZjrbId { get; set; }
public Prod_Banci_Enum Banci { get; set; }
public string BanciName { get; set; } = "";
public int BaoshuShangcun { get; set; }
public int BaoshuLingru { get; set; }
public int BaoshuSaosi { get; set; }
public int BaoshuTuihui { get; set; }
public int BaoshuJincun { get; set; }
public decimal JianliangShangcun { get; set; }
public decimal JianliangLingru { get; set; }
public decimal JianliangSaosi { get; set; }
public decimal JianliangTuihui { get; set; }
public decimal JianliangJincun { get; set; }
}
/// <summary>煮茧日报整条保存(主表 + 班次 + 机组 + 机组班次)</summary>
public class ZjrbSaveDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public long DepId { get; set; }
public string DepName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public string Guige { get; set; } = "";
public DateTime? LastDate { get; set; }
public int StandardLuositongshu { get; set; }
public int MeitongJianliang { get; set; }
/// <summary>联统茧标重(kg/包),来自参数配置「生产\前缫\煮茧 → 联统茧标重」,未配置为 0</summary>
public decimal LiantongBiaozhong { get; set; }
public int BaoshuShangcun { get; set; }
public int BaoshuLingru { get; set; }
public int BaoshuSaosi { get; set; }
public int BaoshuTuihui { get; set; }
public int BaoshuJincun { get; set; }
public decimal JianliangShangcun { get; set; }
public decimal JianliangLingru { get; set; }
public decimal JianliangSaosi { get; set; }
public decimal JianliangTuihui { get; set; }
public decimal JianliangJincun { get; set; }
public List<ZjrbBanciDto> Bancis { get; set; } = new();
public List<ZjrbJizuDto> Jizus { get; set; } = new();
}
@@ -0,0 +1,695 @@
using F9WebAiTest.Domain.Entities.Wms;
namespace F9WebAiTest.Application.Dtos.Wms;
/// <summary>下拉选项(单据类型 / 台账项目 / 往来单位 / 部门 / 庄口 / 物资)</summary>
public class WmsOptionDto
{
public long Id { get; set; }
public string Name { get; set; } = "";
public string Code { get; set; } = "";
public string Ext { get; set; } = "";
}
public class WmsTypeOptionDto
{
public int Value { get; set; }
public string Name { get; set; } = "";
}
public class WmsOptionsDto
{
public List<WmsTypeOptionDto> RukuTypes { get; set; } = new();
public List<WmsTypeOptionDto> ChukuTypes { get; set; } = new();
public List<WmsOptionDto> Wuzi { get; set; } = new();
public List<WmsOptionDto> YuanliaoZhuangkou { get; set; } = new();
public List<WmsOptionDto> CraftZhuangkou { get; set; } = new();
public List<WmsOptionDto> Departments { get; set; } = new();
public List<WmsOptionDto> Gongyingshangs { get; set; } = new();
}
// ==================== 入库 ====================
public class WmsRukuListDto
{
public long Id { get; set; }
public int Module { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public int Type { get; set; }
public string TypeName { get; set; } = "";
public string Code { get; set; } = "";
public long GysId { get; set; }
public string GysName { get; set; } = "";
public long KhId { get; set; }
public string KhName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public long DepId { get; set; }
public string DepName { get; set; } = "";
public string Lianxiren { get; set; } = "";
public string Phone { get; set; } = "";
public string Carno { get; set; } = "";
public string Kuguan { get; set; } = "";
public string Caigouyuan { get; set; } = "";
public string PayStatus { get; set; } = "";
public int RkStatus { get; set; }
public string RkStatusName { get; set; } = "";
public int BxStatus { get; set; }
public string BxStatusName { get; set; } = "";
public string Description { get; set; } = "";
public int Jianshu { get; set; }
public int BaojianNum { get; set; }
public decimal Jingzhong { get; set; }
public decimal Shuliang { get; set; }
public decimal Jine { get; set; }
public int DetailCount { get; set; }
}
public class WmsRukuDetailDto
{
public long Id { get; set; }
public long RukuId { get; set; }
public long WzmlId { get; set; }
public string WzmlName { get; set; } = "";
public string WzmlCode { get; set; } = "";
public string Unit { get; set; } = "";
public long YlzkId { get; set; }
public string YlzkName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public long DepId { get; set; }
public string DepName { get; set; } = "";
public int Jianshu { get; set; }
public decimal Maozhong { get; set; }
public decimal Pizhong { get; set; }
public decimal Jingzhong { get; set; }
public decimal BiaobaoZhongliang { get; set; }
public decimal BaozhuangZhongliang { get; set; }
public decimal Shuliang { get; set; }
public decimal Danjia { get; set; }
public decimal Jine { get; set; }
public decimal Sunhao { get; set; }
public string PiciCodes { get; set; } = "";
public int PiciNum { get; set; }
public int BaojianNum { get; set; }
public string PiciIds { get; set; } = "";
public string Banci { get; set; } = "";
public string JidiWaigou { get; set; } = "";
public List<WmsBangmadanDto> Bangmadans { get; set; } = new();
}
public class WmsBangmadanDto
{
public long Id { get; set; }
public long DetailId { get; set; }
public bool IsChuku { get; set; }
public int Jianshu { get; set; }
public decimal Maozhong { get; set; }
public decimal Pizhong { get; set; }
public decimal Jingzhong { get; set; }
public DateTime? GuobangShijian { get; set; }
}
public class WmsRukuEditDto
{
public long Id { get; set; }
public int Module { get; set; }
public DateTime Date { get; set; }
public int Type { get; set; }
public string Code { get; set; } = "";
public long GysId { get; set; }
public string GysName { get; set; } = "";
public long KhId { get; set; }
public string KhName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public long DepId { get; set; }
public string DepName { get; set; } = "";
public string Lianxiren { get; set; } = "";
public string Phone { get; set; } = "";
public string Carno { get; set; } = "";
public string Kuguan { get; set; } = "";
public string Caigouyuan { get; set; } = "";
public string PayStatus { get; set; } = "";
public int RkStatus { get; set; }
public int BxStatus { get; set; }
public string Description { get; set; } = "";
public List<WmsRukuDetailDto> Details { get; set; } = new();
}
public class WmsRukuSaveDto
{
public long Id { get; set; }
public int Module { get; set; }
public DateTime Date { get; set; }
public int Type { get; set; }
public string Code { get; set; } = "";
public long GysId { get; set; }
public long KhId { get; set; }
public long GyzkId { get; set; }
public long DepId { get; set; }
public string Lianxiren { get; set; } = "";
public string Phone { get; set; } = "";
public string Carno { get; set; } = "";
public string Kuguan { get; set; } = "";
public string Caigouyuan { get; set; } = "";
public string PayStatus { get; set; } = "";
public int RkStatus { get; set; }
public int BxStatus { get; set; }
public string Description { get; set; } = "";
public List<WmsRukuDetailSaveDto> Details { get; set; } = new();
}
public class WmsRukuDetailSaveDto
{
public long Id { get; set; }
public long WzmlId { get; set; }
public long YlzkId { get; set; }
public long GyzkId { get; set; }
public long DepId { get; set; }
public int Jianshu { get; set; }
public decimal Maozhong { get; set; }
public decimal Pizhong { get; set; }
public decimal Jingzhong { get; set; }
public decimal BiaobaoZhongliang { get; set; }
public decimal BaozhuangZhongliang { get; set; }
public decimal Shuliang { get; set; }
public decimal Danjia { get; set; }
public decimal Jine { get; set; }
public decimal Sunhao { get; set; }
public string PiciCodes { get; set; } = "";
public int PiciNum { get; set; }
public int BaojianNum { get; set; }
public string PiciIds { get; set; } = "";
public string Banci { get; set; } = "";
public string JidiWaigou { get; set; } = "";
public List<WmsBangmadanDto> Bangmadans { get; set; } = new();
}
// ==================== 出库 ====================
public class WmsChukuListDto
{
public long Id { get; set; }
public int Module { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public int Type { get; set; }
public string TypeName { get; set; } = "";
public string Code { get; set; } = "";
public long WldwId { get; set; }
public string WldwName { get; set; } = "";
public long KhId { get; set; }
public string KhName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public long LingliaoDepId { get; set; }
public string LingliaoDepName { get; set; } = "";
public long UseDepId { get; set; }
public string UseDepName { get; set; } = "";
public long DbdepId { get; set; }
public string DbdepName { get; set; } = "";
public string Lingliaoren { get; set; } = "";
public string Kuguan { get; set; } = "";
public string UseLocation { get; set; } = "";
public int CkStatus { get; set; }
public string CkStatusName { get; set; } = "";
public bool IsHongchong { get; set; }
public string Description { get; set; } = "";
public int Jianshu { get; set; }
public decimal Jingzhong { get; set; }
public decimal Shuliang { get; set; }
public decimal Jine { get; set; }
public int DetailCount { get; set; }
}
public class WmsChukuDetailDto
{
public long Id { get; set; }
public long ChukuId { get; set; }
public long WzmlId { get; set; }
public string WzmlName { get; set; } = "";
public string WzmlCode { get; set; } = "";
public string Unit { get; set; } = "";
public long YlzkId { get; set; }
public string YlzkName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public long DepId { get; set; }
public string DepName { get; set; } = "";
public int Jianshu { get; set; }
public decimal Maozhong { get; set; }
public decimal Pizhong { get; set; }
public decimal Jingzhong { get; set; }
public decimal BiaobaoZhongliang { get; set; }
public decimal BaozhuangZhongliang { get; set; }
public decimal Shuliang { get; set; }
public decimal Danjia { get; set; }
public decimal Jine { get; set; }
public decimal KucunNum { get; set; }
public string PiciCodes { get; set; } = "";
public int PiciNum { get; set; }
public string PcAndBjIds { get; set; } = "";
public string Lingyongren { get; set; } = "";
public string Banci { get; set; } = "";
public string JidiWaigou { get; set; } = "";
public List<WmsBangmadanDto> Bangmadans { get; set; } = new();
}
public class WmsChukuEditDto
{
public long Id { get; set; }
public int Module { get; set; }
public DateTime Date { get; set; }
public int Type { get; set; }
public string Code { get; set; } = "";
public long WldwId { get; set; }
public string WldwName { get; set; } = "";
public long KhId { get; set; }
public string KhName { get; set; } = "";
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public long LingliaoDepId { get; set; }
public string LingliaoDepName { get; set; } = "";
public long UseDepId { get; set; }
public string UseDepName { get; set; } = "";
public long DbdepId { get; set; }
public string DbdepName { get; set; } = "";
public string Lingliaoren { get; set; } = "";
public string Kuguan { get; set; } = "";
public string UseLocation { get; set; } = "";
public int CkStatus { get; set; }
public bool IsHongchong { get; set; }
public long HongchongId { get; set; }
public string Description { get; set; } = "";
public List<WmsChukuDetailDto> Details { get; set; } = new();
}
public class WmsChukuSaveDto
{
public long Id { get; set; }
public int Module { get; set; }
public DateTime Date { get; set; }
public int Type { get; set; }
public string Code { get; set; } = "";
public long WldwId { get; set; }
public long KhId { get; set; }
public long GyzkId { get; set; }
public long LingliaoDepId { get; set; }
public long UseDepId { get; set; }
public long DbdepId { get; set; }
public string Lingliaoren { get; set; } = "";
public string Kuguan { get; set; } = "";
public string UseLocation { get; set; } = "";
public int CkStatus { get; set; }
public string Description { get; set; } = "";
public List<WmsChukuDetailSaveDto> Details { get; set; } = new();
}
public class WmsChukuDetailSaveDto
{
public long Id { get; set; }
public long WzmlId { get; set; }
public long YlzkId { get; set; }
public long GyzkId { get; set; }
public long DepId { get; set; }
public int Jianshu { get; set; }
public decimal Maozhong { get; set; }
public decimal Pizhong { get; set; }
public decimal Jingzhong { get; set; }
public decimal BiaobaoZhongliang { get; set; }
public decimal BaozhuangZhongliang { get; set; }
public decimal Shuliang { get; set; }
public decimal Danjia { get; set; }
public decimal Jine { get; set; }
public decimal KucunNum { get; set; }
public string PiciCodes { get; set; } = "";
public int PiciNum { get; set; }
public string PcAndBjIds { get; set; } = "";
public string Lingyongren { get; set; } = "";
public string Banci { get; set; } = "";
public string JidiWaigou { get; set; } = "";
public List<WmsBangmadanDto> Bangmadans { get; set; } = new();
}
// ==================== 库存台账 ====================
public class WmsTzDateDto
{
public long Id { get; set; }
public int Module { get; set; }
public int Kind { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public DateTime LastDate { get; set; }
public string LastDateText => LastDate.ToString("yyyy-MM-dd");
public int ItemCount { get; set; }
}
public class WmsTzItemDto
{
public long Id { get; set; }
public long TzDateId { get; set; }
public long ItemId { get; set; }
public string SubKey { get; set; } = "";
public string ItemName { get; set; } = "";
public string ItemCode { get; set; } = "";
public decimal Ydayjianshu { get; set; }
public decimal Ydayjingzhong { get; set; }
public decimal Tdayrukujianshu { get; set; }
public decimal Tdayrukujingzhong { get; set; }
public decimal Tdaychukujianshu { get; set; }
public decimal Tdaychukujingzhong { get; set; }
public decimal Yingkui { get; set; }
public decimal Tdayjianshu { get; set; }
public decimal Tdayjingzhong { get; set; }
public decimal Yangjianjianshu { get; set; }
public bool AllChuku { get; set; }
public string Description { get; set; } = "";
}
public class WmsTzEditDto
{
public long TzDateId { get; set; }
public int Module { get; set; }
public int Kind { get; set; }
public DateTime Date { get; set; }
public DateTime LastDate { get; set; }
public List<WmsTzItemDto> Items { get; set; } = new();
}
public class WmsTzSaveDto
{
public long TzDateId { get; set; }
public int Module { get; set; }
public int Kind { get; set; }
public DateTime Date { get; set; }
public List<WmsTzItemDto> Items { get; set; } = new();
}
public class WmsTzGenerateDto
{
public int Module { get; set; }
public int Kind { get; set; }
public DateTime Date { get; set; }
}
// ==================== 库存 / 流水 ====================
public class WmsKucunDto
{
public long WzmlId { get; set; }
public string WzmlName { get; set; } = "";
public string WzmlCode { get; set; } = "";
public string Unit { get; set; } = "";
public string Guige { get; set; } = "";
public decimal Shuliang { get; set; }
public decimal Danjia { get; set; }
public decimal Jine { get; set; }
}
public class WmsCrkDto
{
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public bool IsRuku { get; set; }
public string Kind => IsRuku ? "入库" : "出库";
public string Code { get; set; } = "";
public string TypeName { get; set; } = "";
public long WzmlId { get; set; }
public string WzmlName { get; set; } = "";
public string WzmlCode { get; set; } = "";
public string Unit { get; set; } = "";
public decimal Shuliang { get; set; }
public decimal Danjia { get; set; }
public decimal Jine { get; set; }
public string Description { get; set; } = "";
}
// ==================== 生丝批次 / 包件 ====================
public class WmsPiciListDto
{
public long Id { get; set; }
public string Code { get; set; } = "";
public int CodeType { get; set; }
public int Year { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public DateTime? ScDate { get; set; }
public long GyzkId { get; set; }
public string GyzkName { get; set; } = "";
public long WzmlId { get; set; }
public string WzmlName { get; set; } = "";
public long DepId { get; set; }
public string DepName { get; set; } = "";
public string Guige { get; set; } = "";
public string JidiWaigou { get; set; } = "";
public string YoujiPutong { get; set; } = "";
public int Baoshu { get; set; }
public int StartBaojianNum { get; set; }
public decimal Maozhong { get; set; }
public decimal Pizhong { get; set; }
public decimal Jingzhong { get; set; }
public decimal Gongliang { get; set; }
public int KcStatus { get; set; }
public string KcStatusName { get; set; } = "";
public long RkItemId { get; set; }
public DateTime? RkDate { get; set; }
public DateTime CkLastDate { get; set; }
public int CkBaoshu { get; set; }
public decimal CkJingzhong { get; set; }
public int KcBaoshu { get; set; }
public string Dengji { get; set; } = "";
public decimal Qingjie { get; set; }
public decimal Jiejing { get; set; }
public decimal Piancha { get; set; }
public decimal Zongcha { get; set; }
public decimal Qieduan { get; set; }
public string Description { get; set; } = "";
public int BaojianNum { get; set; }
}
public class WmsPiciSaveDto
{
public long Id { get; set; }
public string Code { get; set; } = "";
public int CodeType { get; set; }
public DateTime Date { get; set; }
public DateTime? ScDate { get; set; }
public long GyzkId { get; set; }
public long WzmlId { get; set; }
public long DepId { get; set; }
public string Guige { get; set; } = "";
public string JidiWaigou { get; set; } = "";
public string YoujiPutong { get; set; } = "";
public int Baoshu { get; set; }
public int StartBaojianNum { get; set; }
public decimal Maozhong { get; set; }
public decimal Pizhong { get; set; }
public decimal Jingzhong { get; set; }
public decimal Gongliang { get; set; }
public int KcStatus { get; set; }
public string Dengji { get; set; } = "";
public decimal Qingjie { get; set; }
public decimal Jiejing { get; set; }
public decimal Piancha { get; set; }
public decimal Zongcha { get; set; }
public decimal Qieduan { get; set; }
public string Description { get; set; } = "";
public List<WmsPiciBaojianDto> Baojians { get; set; } = new();
}
public class WmsPiciBaojianDto
{
public long Id { get; set; }
public long PiciId { get; set; }
public int Baojianhao { get; set; }
public decimal Maozhong { get; set; }
public decimal Pizhong { get; set; }
public decimal Jingzhong { get; set; }
public decimal Gongliang { get; set; }
public decimal Huichaolv { get; set; }
public bool CkIsck { get; set; }
public long CkItemId { get; set; }
public DateTime? CkDate { get; set; }
public decimal CkJingzhong { get; set; }
public string Description { get; set; } = "";
}
/// <summary>生丝出库选批次(批次 + 未出库包件),对齐 F9 SSPici_GetChukuSelectAsync</summary>
public class WmsPiciChukuSelectDto
{
public long PiciId { get; set; }
public string PiciCode { get; set; } = "";
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public string Guige { get; set; } = "";
public string WzmlName { get; set; } = "";
public string GyzkName { get; set; } = "";
public string DepName { get; set; } = "";
public string JidiWaigou { get; set; } = "";
public int Baoshu { get; set; } // 组批包数
public int KcBaoshu { get; set; } // 库存(未出库)包数
public decimal Jingzhong { get; set; } // 组批净重
public decimal KcJingzhong { get; set; } // 库存净重
public string Description { get; set; } = "";
public List<WmsPiciBaojianDto> Baojians { get; set; } = new();
}
/// <summary>生丝批次-质检</summary>
public class WmsPiciQcDto
{
public long Id { get; set; }
public long PiciId { get; set; }
public string Pingwei { get; set; } = "";
public string Seze { get; set; } = "";
public decimal AvgHuichaolv { get; set; }
public decimal AvgGongliangXiandu { get; set; }
public decimal XianduPiancha { get; set; }
public decimal XianduZdpiancha { get; set; }
public decimal Qingjie { get; set; }
public decimal Jiejing { get; set; }
public int JunyunYd { get; set; }
public int JunyunEd { get; set; }
public int JunyunSd { get; set; }
public int Qieduan { get; set; }
public string DuanlieQiangdu { get; set; } = "";
public string DuanlieShenchanglv { get; set; } = "";
public int Baohe { get; set; }
public string WgWg { get; set; } = "";
public string WgYanse { get; set; } = "";
public string WgGuangze { get; set; } = "";
public string WgShougan { get; set; } = "";
public int? QjZhuyao { get; set; }
public int? QjCiyaoFeisi { get; set; }
public int? QjCiyaoDacao { get; set; }
public int? QjCiyaoNianfucao { get; set; }
public int? QjCiyaoDachangjie { get; set; }
public int? QjCiyaoZhongluoxuan { get; set; }
public int? QjPutongXiaocao { get; set; }
public int? QjPutongChangjie { get; set; }
public int? QjPutongLuoxuan { get; set; }
public int? QjPutongHuanjie { get; set; }
public int? Jj100 { get; set; }
public int? Jj95 { get; set; }
public int? Jj90 { get; set; }
public int? Jj85 { get; set; }
public int? Jj80 { get; set; }
public int? Jj75 { get; set; }
public int? Jj70 { get; set; }
public int? Jj65 { get; set; }
public int? Jj60 { get; set; }
public int? Jj55 { get; set; }
public int? Jj50 { get; set; }
public int? Jj45 { get; set; }
public string JjYuanyin { get; set; } = "";
public string Description { get; set; } = "";
}
/// <summary>生丝批次-纤度检验</summary>
public class WmsPiciQcXdjyDto
{
public long Id { get; set; }
public long PiciId { get; set; }
public decimal Xiandu { get; set; }
public int Num { get; set; }
}
// ==================== 原料采购 / 翻包计划 ====================
public class WmsCaigouDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public string Code { get; set; } = "";
public long GysId { get; set; }
public string GysName { get; set; } = "";
public long YlzkId { get; set; }
public string YlzkName { get; set; } = "";
public int Jianshu { get; set; }
public decimal Maozhong { get; set; }
public decimal Pizhong { get; set; }
public decimal Jingzhong { get; set; }
public decimal Danjia { get; set; }
public decimal Jine { get; set; }
public string Description { get; set; } = "";
}
public class WmsFbplanDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public string Code { get; set; } = "";
public long YlzkId { get; set; }
public string YlzkName { get; set; } = "";
public long WzmlId { get; set; }
public string WzmlName { get; set; } = "";
public int Jianshu { get; set; }
public decimal Jingzhong { get; set; }
public int FbType { get; set; }
public string FbTypeName { get; set; } = "";
public int RukuStatus { get; set; }
public string RukuStatusName { get; set; } = "";
public string Description { get; set; } = "";
public decimal YiwanchengJianshu { get; set; }
public decimal YiwanchengJingzhong { get; set; }
public List<WmsFbjlDto> Records { get; set; } = new();
}
public class WmsFbjlDto
{
public long Id { get; set; }
public long FbplanId { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public int Jianshu { get; set; }
public decimal Jingzhong { get; set; }
public string Description { get; set; } = "";
}
// ==================== 物资采购计划 ====================
public class WmsCgplanListDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public string DateText => Date.ToString("yyyy-MM-dd");
public string Code { get; set; } = "";
public long DepId { get; set; }
public string DepName { get; set; } = "";
public int Status { get; set; }
public string StatusName { get; set; } = "";
public string Description { get; set; } = "";
public decimal Shuliang { get; set; }
public decimal Jine { get; set; }
public int ItemCount { get; set; }
}
public class WmsCgplanItemDto
{
public long Id { get; set; }
public long CgplanId { get; set; }
public long WzmlId { get; set; }
public string WzmlName { get; set; } = "";
public string WzmlCode { get; set; } = "";
public string Unit { get; set; } = "";
public decimal Shuliang { get; set; }
public decimal Danjia { get; set; }
public decimal Jine { get; set; }
public string Description { get; set; } = "";
}
public class WmsCgplanSaveDto
{
public long Id { get; set; }
public DateTime Date { get; set; }
public string Code { get; set; } = "";
public long DepId { get; set; }
public int Status { get; set; }
public string Description { get; set; } = "";
public List<WmsCgplanItemDto> Items { get; set; } = new();
}