using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core.Attributes;
namespace WIDESEA_DTO.Inbound
{
    [ModelValidate]
    public class InboundOrderAddDTO
    {
        /// 
        /// 上游单据编号
        /// 
        [PropertyValidate("上游单据编号", NotNullAndEmpty = true)]
        public string OrderNo { get; set; }
        /// 
        /// 单据类型
        /// 
        [PropertyValidate("单据类型", NotNullAndEmpty = true)]
        public int Type { get; set; }
        /// 
        /// 操作类型
        /// 
        [PropertyValidate("操作类型", Check = new object[] { 1, 2, 3, 4 })]
        public int OperateType { get; set; }
        /// 
        /// 采购数量
        /// 
        [PropertyValidate("采购数量", MinValue = 0, IsContainMinValue = false)]
        public float Amount { get; set; }
        /// 
        /// 下单日期
        /// 
        [PropertyValidate("下单日期", NotNullAndEmpty = true)]
        public string OrderDate { get; set; }
        /// 
        /// 备注
        /// 
        public string Note { get; set; }
        [PropertyValidate("单据明细信息", NotNullAndEmpty = true)]
        public List MList { get; set; }
    }
    [ModelValidate]
    public class InboundOrderDetailAddDTO
    {
        /// 
        /// 物料编号
        /// 
        [PropertyValidate("物料编号", NotNullAndEmpty = true)]
        public string MaterielCode { get; set; }
        /// 
        /// 数量
        /// 
        [PropertyValidate("数量", NotNullAndEmpty = true, MinValue = 0, IsContainMinValue = false)]
        public float Qty { get; set; }
        /// 
        /// 仓库编号
        /// 
        [PropertyValidate("仓库编号", NotNullAndEmpty = true)]
        public int WaId { get; set; }
        /// 
        /// 单位
        /// 
        [PropertyValidate("单位", NotNullAndEmpty = true)]
        public string Unit { get; set; }
    }
}