Files
zszq-trs/Framework/YLErp.Core/DBModels/ClientCreditInout.cs
T

82 lines
3.1 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using System.ComponentModel.DataAnnotations.Schema;
namespace YLErp.DBModels
{
/// <summary>
/// 客户授信出入表(R4 决策④):记录授信占用/释放/调整的全量变化。
/// 金额符号与资金流水同号(2026-08-20 业务确认):入金为负、出金为正;
/// 已使用授信 = SUM(amount) 直接求和,可用授信 = 有效授信 − 已使用授信(入金使可用授信上升、出金使其收缩)。
/// change_type(占用/释放/调整)仅作分类审计;业务字段名一律小写下划线(兼容 PostgreSQL)。
/// </summary>
[Table("client_credit_inout")]
public class client_credit_inout : DBModelBaseV2
{
/// <summary>
/// 变更类型:占用(簿记授信部分)
/// </summary>
public const int ChangeTypeOccupy = 1;
/// <summary>
/// 变更类型:释放(平仓/到期按原标签返还)
/// </summary>
public const int ChangeTypeRelease = 2;
/// <summary>
/// 变更类型:人工调整(授信审批额度变化/特批后补记)
/// </summary>
public const int ChangeTypeAdjust = 3;
/// <summary>
/// 客户
/// </summary>
public int client_id { get; set; }
/// <summary>
/// 关联预付金腿(swap_position.id,授信占用/释放绑定到那条腿;交易级占用/释放可为空)
/// </summary>
public long? position_id { get; set; }
/// <summary>
/// 关联交易(与 position_id 并存,冗余便于按交易查询;授信调整类可为空)
/// </summary>
public int? trade_id { get; set; }
/// <summary>
/// 变更类型 1=占用 2=释放 3=人工调整
/// </summary>
public int change_type { get; set; }
/// <summary>
/// 变更金额:与资金流水同号(入金为负、出金为正);入金使可用授信上升、出金使其收缩
/// </summary>
public double amount { get; set; }
/// <summary>
/// 变更后已使用授信(冗余快照,便于核对与报表)
/// </summary>
public double used_after { get; set; }
/// <summary>
/// 发生日期
/// </summary>
public DateTime happen_date { get; set; }
/// <summary>
/// 备注(如"簿记拆单授信部分""平仓释放"
/// </summary>
public string remark { get; set; }
// 基类操作人列为 PascalCase(其他存量表共用),本表全列小写下划线——override 并映射小写列名。
// 新建表约定:所有列一律小写下划线,基类继承列按此方式覆写。
/// <summary>操作人ID(列 opt_id</summary>
[Column("opt_id")]
public override int OptId { get; set; }
/// <summary>操作人名称(列 opt_name</summary>
[Column("opt_name")]
public override string OptName { get; set; }
/// <summary>操作时间(列 opt_time</summary>
[Column("opt_time")]
public override DateTime OptTime { get; set; }
}
}