using Admin.NET.Core; namespace Admin.NET.Plugin.AiDOP.Entity; /// /// S5 来料检验 SQE 处置记录。 /// /// 不合格来料检验单(qms_qcp_inspbill.pd=1)经检验主管通过后进入 N3_SQE_DISPOSITION, /// SQE 提交处置方案落此表。disposition_type 复用 clfs 编码(0 让步接收 / 1 挑选 / 2 报废), /// 不覆盖 qms_qcp_inspbill.clfs。本批不做仓储确认/库存/入库/附件上传(attachment_json 预留)。 /// 一单一有效处置由 service 校验(status=1 且未软删)。 /// [SugarTable("ado_s5_iqc_sqe_disposition", "S5 来料检验SQE处置")] [SugarIndex("idx_s5_sqe_disp_inspbill", nameof(InspbillId), OrderByType.Asc)] [SugarIndex("idx_s5_sqe_disp_flow", nameof(FlowInstanceId), OrderByType.Asc)] [SugarIndex("uk_s5_sqe_disp_no", nameof(DispositionNo), OrderByType.Asc, true)] [SugarIndex("idx_s5_sqe_disp_status", nameof(Status), OrderByType.Asc)] public class AdoS5IqcSqeDisposition : EntityBaseDel, ITenantIdFilter { /// 租户 [SugarColumn(ColumnName = "tenant_id", ColumnDescription = "租户", IsNullable = true)] public long? TenantId { get; set; } /// 工厂/组织 [SugarColumn(ColumnName = "org_id", ColumnDescription = "工厂/组织", IsNullable = true)] public long? OrgId { get; set; } /// 检验单 id(qms_qcp_inspbill.id) [SugarColumn(ColumnName = "inspbill_id", ColumnDescription = "检验单id")] public long InspbillId { get; set; } /// 检验单号(FBILLNO) [SugarColumn(ColumnName = "inspbill_no", ColumnDescription = "检验单号", Length = 80)] public string InspbillNo { get; set; } = string.Empty; /// 来源单号(lydjbh) [SugarColumn(ColumnName = "source_bill_no", ColumnDescription = "来源单号", Length = 255, IsNullable = true)] public string? SourceBillNo { get; set; } /// 业务类型 [SugarColumn(ColumnName = "biz_type", ColumnDescription = "业务类型", Length = 80, IsNullable = true)] public string? BizType { get; set; } = "S5_IQC_INSPBILL"; /// 流程实例 id [SugarColumn(ColumnName = "flow_instance_id", ColumnDescription = "流程实例id", IsNullable = true)] public long? FlowInstanceId { get; set; } /// 处置单号(唯一) [SugarColumn(ColumnName = "disposition_no", ColumnDescription = "处置单号", Length = 80)] public string DispositionNo { get; set; } = string.Empty; /// 处置方式:0 让步接收 / 1 挑选 / 2 报废 [SugarColumn(ColumnName = "disposition_type", ColumnDescription = "处置方式")] public int DispositionType { get; set; } /// 处置数量 [SugarColumn(ColumnName = "disposition_qty", ColumnDescription = "处置数量", Length = 18, DecimalDigits = 6, IsNullable = true)] public decimal? DispositionQty { get; set; } /// 让步接收数量 [SugarColumn(ColumnName = "concession_qty", ColumnDescription = "让步接收数量", Length = 18, DecimalDigits = 6, IsNullable = true)] public decimal? ConcessionQty { get; set; } /// 挑选数量 [SugarColumn(ColumnName = "selection_qty", ColumnDescription = "挑选数量", Length = 18, DecimalDigits = 6, IsNullable = true)] public decimal? SelectionQty { get; set; } /// 报废数量 [SugarColumn(ColumnName = "scrap_qty", ColumnDescription = "报废数量", Length = 18, DecimalDigits = 6, IsNullable = true)] public decimal? ScrapQty { get; set; } /// 供应商回复 [SugarColumn(ColumnName = "supplier_response", ColumnDescription = "供应商回复", Length = 500, IsNullable = true)] public string? SupplierResponse { get; set; } /// 处置意见 [SugarColumn(ColumnName = "disposition_opinion", ColumnDescription = "处置意见", ColumnDataType = StaticConfig.CodeFirst_BigString, IsNullable = true)] public string? DispositionOpinion { get; set; } /// 附件 JSON(预留) [SugarColumn(ColumnName = "attachment_json", ColumnDescription = "附件JSON", ColumnDataType = StaticConfig.CodeFirst_BigString, IsNullable = true)] public string? AttachmentJson { get; set; } /// SQE 处理人 id [SugarColumn(ColumnName = "sqe_user_id", ColumnDescription = "SQE处理人id", IsNullable = true)] public long? SqeUserId { get; set; } /// SQE 处理人名 [SugarColumn(ColumnName = "sqe_user_name", ColumnDescription = "SQE处理人名", Length = 100, IsNullable = true)] public string? SqeUserName { get; set; } /// 状态:1 已提交(本批最小) [SugarColumn(ColumnName = "status", ColumnDescription = "状态")] public int Status { get; set; } /// 提交时间 [SugarColumn(ColumnName = "submitted_at", ColumnDescription = "提交时间", IsNullable = true)] public DateTime? SubmittedAt { get; set; } /// 确认人(预留) [SugarColumn(ColumnName = "confirmed_by", ColumnDescription = "确认人", IsNullable = true)] public long? ConfirmedBy { get; set; } /// 确认时间(预留) [SugarColumn(ColumnName = "confirmed_at", ColumnDescription = "确认时间", IsNullable = true)] public DateTime? ConfirmedAt { get; set; } }