using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace RB_MES_API.Models.Cloud
{
///
/// 批量推送单据到CLOUD配置
///
public class DataSaveBatch
{
///
/// 主键
///
[Key]
public int FID { get; set; }
///
/// FormId
///
[Required]
[DisplayName("业务对象表单Id")]
public int FDocTypeID { get; set; }
///
/// 是否用编码搜索基础资料,布尔类型,默认true(非必录)
///
public bool FNumberSearch { get; set; } = true;
///
/// 是否验证标志,布尔类型,默认true(非必录)
///
public bool FValidateFlag { get; set; } = true;
///
/// 是否验证标志,布尔类型,默认true(非必录)
///
public bool FIsDeleteEntry { get; set; } = true;
///
/// 是否验证标志,布尔类型,默认true(非必录)
///
public bool FIsEntryBatchFill { get; set; } = true;
///
/// 需要更新的字段,数组类型,格式:[key1,key2,...](非必录) 注(更新单据体字段得加上单据体key)
///
public string FNeedUpDateFields { get; set; } = "";
///
/// 需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录) 注(返回单据体字段格式:entitykey.key)
///
public string FNeedReturnFields { get; set; } = string.Empty ;
///
/// 表单所在的子系统内码,字符串类型(非必录)
///
public string FSubSystemId { get; set; } = string.Empty;
///
/// 交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录),例如(允许负库存标识:STK_InvCheckResult)
///
public string FInterationFlags { get; set; } = string.Empty;
///
/// 是否自动提交与审核,布尔类型,默认false(非必录) 注(启用此参数,保存,提交和审核是在一个事务中)
///
public bool FIsAutoSubmitAndAudit { get; set; } = true;
///
/// 服务端开启的线程数,整型(非必录) 注(数据包数应大于此值,否则无效。)
///
public int FBatchCount { get; set; } = 1;
///
/// 是否验证所有的基础资料有效性,布尔类,默认false(非必录)
///
public bool FIsVerifyBaseDataField { get; set; } = true;
///
/// 是否自动调整JSON字段顺序,布尔类型,默认false(非必录)
///
public bool FIsAutoAdjustField { get; set; } = false;
///
/// 是否允许忽略交互,布尔类型,默认true(非必录)
///
public bool FIgnoreInterationFlag { get; set; } = true;
///
/// 是否控制精度,为true时对金额、单价和数量字段进行精度验证,默认false(非必录)
///
public bool FIsControlPrecision { get; set; } = true;
///
/// 校验Json数据包是否重复传入,一旦重复传入,接口调用失败,默认false(非必录)
///
public bool FValidateRepeatJson { get; set; } = true;
///
/// 提交单据的Url地址
///
[DataType(DataType.Url)]
[StringLength(255)]
public string FSubmitUrl { get; set; } = string.Empty;
///
/// 审核单据的Url地址
///
[DataType(DataType.Url)]
[StringLength(255)]
public string FAuditUrl { get; set; } = string.Empty;
///
/// 单据类型 (必填项)
///
public string FErpBillType { get; set; } = string.Empty;
///
/// 外键
///
[ForeignKey("FDocTypeID")]
public virtual FormIDType GetForm { get; set; } //此处不能 = new FunctionList(),否则修改时也会多一张单据
}
}