using DS.Module.Core; using FluentValidation; using SqlSugar; namespace DS.WMS.Core.Op.Dtos; /// /// 海运出口信息请求实体 /// public class SeaExportReq { /// /// 主键Id /// public long Id { get; set; } /// /// 箱信息 /// public List CtnInfo { get; set; } /// /// Edi信息 /// public SeaExportEdiReq EdiInfo { get; set; } /// /// 主单Id /// public long ParentId { get; set; } = 0; /// /// 业务状态 /// public int BusinessStatus { get; set; } ///// ///// 单据费用状态 ///// //public int BillFeeStatus { get; set; } ///// ///// 单据费用状态时间 ///// //public DateTime BillFeeStatusTime { get; set; } ///// ///// Desc:是否业务锁定 ///// //[SugarColumn(ColumnDescription = "是否业务锁定", DefaultValue = "0")] //public bool? IsBusinessLocking { get; set; } = false; ///// ///// Desc:是否费用锁定 ///// //[SugarColumn(ColumnDescription = "是否费用锁定", DefaultValue = "0")] //public bool? IsFeeLocking { get; set; } = false; ///// ///// 费用状态 ///// //public int FeeStatus { get; set; } /// /// 录入日期 /// public DateTime BusinessDate { get; set; } = DateTime.Now; /// /// 财务日期 /// public string AccountDate { get; set; } /// /// 主提单号 /// public string MBLNO { get; set; } /// /// 分提单号 /// public string HBLNO { get; set; } /// /// 委托编号 可以根据规则生成 /// public string CustomerNo { get; set; } /// /// 运单号 可以根据规则生成 /// public string TransNo { get; set; } /// /// 委托单位Id /// public long CustomerId { get; set; } /// /// 委托单位 t_info_client CUSTNAME /// public string CustomerName { get; set; } /// /// 装运方式 整箱、拼箱单票、拼箱主票、拼箱分票 /// public string BLType { get; set; } /// /// 发货人 t_info_client CUSTNAME /// public long? ShipperId { get; set; } /// /// 收货人 t_info_client CUSTNAME /// public long? ConsigneeId { get; set; } /// /// 通知人 t_info_client CUSTNAME /// public long? NotifyPartyId { get; set; } /// /// 国外代理人Id t_info_client CUSTNAME /// public long? AgentId { get; set; } /// /// 国外代理人 t_info_client CUSTNAME /// public string Agent { get; set; } /// /// 发货人内容 /// public string ShipperContent { get; set; } /// /// 收货人内容 /// public string ConsigneeContent { get; set; } /// /// 通知人内容 /// public string NotifyPartyContent { get; set; } /// /// 国外代理内容 /// public string AgentContent { get; set; } /// /// 场站Id t_crm_client CUSTNAME /// public long YardId { get; set; } /// /// 场站 t_crm_client CUSTNAME /// public string Yard { get; set; } /// /// 场站备注 /// public string YardRemark { get; set; } /// /// 船名 t_code_vessel /// public string Vessel { get; set; } /// /// 船名Id t_code_vessel /// public long VesselId { get; set; } /// /// 航次 /// public string Voyno { get; set; } /// /// 开船日期 /// public DateTime? ETD { get; set; } /// /// 预抵日期 /// public DateTime? ETA { get; set; } /// /// ATD /// public DateTime? ATD { get; set; } /// /// 截港日期 /// public DateTime? ClosingDate { get; set; } /// /// 收货地 /// public string ReceiptPlace { get; set; } /// /// 装货港Id /// public long ReceiptPlaceId { get; set; } /// /// 装货港代码 /// public long LoadPortId { get; set; } /// /// 装货港 /// public string LoadPort { get; set; } /// /// 卸货港代码 /// public long DischargePortId { get; set; } /// /// 卸货港 /// public string DischargePort { get; set; } /// /// 交货地代码 /// public long DeliveryPlaceId { get; set; } /// /// 交货地 /// public string DeliveryPlace { get; set; } /// /// 目的地代码 /// public long DestinationId { get; set; } /// /// 目的地 /// public string Destination { get; set; } /// /// 提单份数 /// public string NoBill { get; set; } /// /// 副本份数 /// public string CopyNoBill { get; set; } /// /// 签单方式 t_code_issutype /// public string IssueType { get; set; } /// /// 签单日期 /// public DateTime? IssueDate { get; set; } /// /// 签单地点Id /// public long IssuePlaceId { get; set; } /// /// 签单地点 /// public string IssuePlace { get; set; } /// /// 签单状态 /// public DateTime? BLIssueSatus { get; set; } /// /// 付款地点Id /// public long PrepareAtId { get; set; } /// /// 预付地点 /// public string PrepareAt { get; set; } /// /// 预付地点 /// public string PayableAt { get; set; } /// /// 运输条款 CY-CY t_code_service /// public string Service { get; set; } /// /// 唛头 N/M /// public string Marks { get; set; } /// /// 箱号封号 /// public string CntrSealNo { get; set; } /// /// 件数包装 /// public string NoPkgs { get; set; } /// /// 货物描述 /// public string Description { get; set; } /// /// 品名Id /// public long GoodsId { get; set; } /// /// 品名 t_code_goods /// public string GoodsName { get; set; } /// /// 货物毛重 /// public string GrossWeight { get; set; } /// /// 货物尺码 /// public string Measurement { get; set; } /// /// 件数 /// public int? PKGS { get; set; } /// /// 包装 t_code_package /// public string KindPkgs { get; set; } /// /// 毛重 /// public decimal? KGS { get; set; } /// /// 尺码 /// public decimal? CBM { get; set; } /// /// 件数大写 /// public string TotalNo { get; set; } /// /// 集装箱大写 /// public string CntrNo { get; set; } /// /// 操作员 /// public long OperatorId { get; set; } /// /// 客服 /// public long CustomerService { get; set; } /// /// 外国客服 /// public long ForeignCustomerService { get; set; } /// /// 航线Id /// public long LaneId { get; set; } /// /// 航线 /// public string Lane { get; set; } /// /// 揽货人Id /// public long SaleId { get; set; } /// /// 揽货人 /// public string Sale { get; set; } /// /// 船公司Id /// public long CarrierId { get; set; } /// /// 船公司 /// public string Carrier { get; set; } /// /// 货代公司Id /// public long ForwarderId { get; set; } /// /// 货代公司 /// public string Forwarder { get; set; } /// /// 报关行Id /// public long CustomserId { get; set; } /// /// 报关行 /// public string Customser { get; set; } /// /// 承运车队Id /// public long TruckerId { get; set; } /// /// 承运车队 /// public string Trucker { get; set; } /// /// 发票号 /// public string InvoiceNo { get; set; } /// /// 货物标识 S/R/D/O /// public string CargoId { get; set; } /// /// 危险品分类 /// public string DangerClass { get; set; } /// /// 危险品编号 /// public string DangerNo { get; set; } /// /// 危险品页号 /// public string DangerPage { get; set; } /// /// 危险品标签 /// public string DangerLabel { get; set; } /// /// 冷藏通风量 /// public string ReeferQuantity { get; set; } /// /// 温度单位 /// public string TemperatureUnit { get; set; } /// /// 设置温度 /// public string TemperatureSet { get; set; } /// /// 最低温度 /// public string TemperatureMin { get; set; } /// /// 最高温度 /// public string TemperatureMax { get; set; } /// /// Desc:业务来源Id /// public long SourceId { get; set; } /// /// Desc:业务来源明细Id /// public long SourceDetailId { get; set; } /// /// Desc:报关票数 /// public int CustomsNum { get; set; } = 0; /// /// 运费协议号 /// public string ContractNo { get; set; } /// /// 订舱类型 /// public string BookingType { get; set; } /// /// 订舱编号 /// public string BookingNo { get; set; } /// /// Desc:保险人 /// public string Insuranceer { get; set; } /// /// Desc:保险单号 /// public string InsuranceNo { get; set; } /// /// Desc:保险金额 /// public decimal? InsuranceAmount { get; set; } /// /// Desc:是否生成凭证 /// public bool? IsVoucher { get; set; } = false; /// /// Desc:凭证号 /// public string VoucherNo { get; set; } /// /// Desc:备注 /// public string Remark { get; set; } /// /// Desc:熏蒸 /// public bool? IsFumigation { get; set; } = false; /// /// Desc:仓储 /// public bool? IsStorage { get; set; } = false; /// /// Desc:陆运 /// public bool? IsLand { get; set; } = false; /// /// Desc:报关 /// public bool? IsCustoms { get; set; } = false; /// /// Desc:报检 /// public bool? IsInspection { get; set; } = false; /// /// Desc:订舱 /// public bool? IsBooking { get; set; } = false; /// /// Desc:使用代理 /// public bool? IsAgent { get; set; } = false; /// /// Desc:分单签单 /// public bool? IsHBLNO { get; set; } = false; /// /// Desc:服务项目9 /// public bool? Service9 { get; set; } = false; /// /// Desc:服务项目10 /// public bool? Service10 { get; set; } = false; /// /// Desc:单证 /// public long Doc { get; set; } /// /// Desc:装箱类型 /// public string PackingType { get; set; } /// /// Desc:仓库Id /// public long WareHouseId { get; set; } /// /// Desc:仓库 /// public string WareHouse { get; set; } /// /// 截单日期 /// public DateTime? CloseDocDate { get; set; } /// /// 集港日期 /// public DateTime? IntoPortDocDate { get; set; } /// /// Desc:所属业务部门 /// public long SaleDeptId { get; set; } /// /// Desc:MBL付费方式 t_code_frt /// public string MBLFrt { get; set; } /// /// Desc:结算方式 /// public string StlName { get; set; } /// /// Desc:月结算时间 /// public DateTime? StlDate { get; set; } /// /// Desc:委托方式 /// public string OrderType { get; set; } /// /// Desc:订舱编号 /// public string OrderNo { get; set; } /// /// Desc:操作员代码 /// public string OperatorCode { get; set; } /// /// Desc:是否为操作 /// public bool IsOperator { get; set; } /// /// Desc:操作员邮箱 /// public string OperatorEmail { get; set; } /// /// Desc:操作员电话 /// public string OperatorTel { get; set; } /// /// Desc:操作员传真 /// public string OperatorFax { get; set; } /// /// Desc:场站自结 /// public string FinancialStaffCode { get; set; } /// /// Desc:是否为财务 /// public bool? IsFinancialStaff { get; set; } = false; /// /// Desc:财务邮箱 /// public string FinancialStaffEmail { get; set; } /// /// Desc:财务电话 /// public string FinancialStaffTel { get; set; } /// /// Desc:财务传真 /// public string FinancialStaffFax { get; set; } /// /// Desc:业务来源代码 /// public string SourceCode { get; set; } /// /// Desc:联系人 /// public string LinkMan { get; set; } /// /// Desc:海关代码 /// public string HSCode { get; set; } /// /// Desc:EDI备注 /// public string EdiRemark { get; set; } /// /// Desc:邮件方案 /// public long MailProjectId { get; set; } /// /// Desc:CSR/IR号 /// public string IRCode { get; set; } /// /// Desc:服务合同号 /// public string ServiceContractNo { get; set; } /// /// Desc:申请放箱号 /// public string ApplyNo { get; set; } /// /// Desc:报关单号 /// public string CustomNo { get; set; } /// /// Desc: 报关日期 /// public DateTime? CustomDate { get; set; } /// /// 单位编码 /// public long? EnterpriseId { get; set; } /// /// 单位 /// public string Enterprise { get; set; } /// /// Desc:商检单号 /// public string InspectionNo { get; set; } /// /// Desc:商检日期 /// public DateTime? InspectionDate { get; set; } /// /// Desc:贸易条款 /// public string TradeTerm { get; set; } /// /// Desc:贸易方式 /// public string TermDelivery { get; set; } /// /// Desc:清关日期 /// public DateTime ClearCustomDate { get; set; } /// /// Desc:报检项目 /// public string InsperctService { get; set; } /// /// 船代Id /// public long ShipAgencyId { get; set; } /// /// 船代 /// public string ShipAgency { get; set; } /// /// Desc:湿度 /// public string Humidity { get; set; } /// /// Master发货人 /// public long? MasterShipperId { get; set; } /// /// Master收货人 t_info_client CUSTNAME /// public long? MasterConsigneeId { get; set; } /// /// Master通知人 t_info_client CUSTNAME /// public long? MasterNotifyPartyId { get; set; } /// /// Master收货人内容 /// public string MasterConsigneeContent { get; set; } /// /// Master通知人内容 /// public string MasterNotifyPartyContent { get; set; } /// /// Master发货人内容 /// public string MasterShipperContent { get; set; } /// /// Master单描述 /// public string MasterDescription { get; set; } /// /// Desc:是否SOC /// public bool? IsContainerSoc { get; set; } = false; /// /// Desc:运输状态 /// public string TranStatus { get; set; } /// /// Desc: /// public string ManifestStatus { get; set; } /// /// 是否多品名 /// public bool IsMoreGood { get; set; } /// /// 是否打印小票 /// public bool IsPrintReceipt { get; set; } // /// // /// 是否取消 // /// // [SugarColumn(ColumnDescription = "是否取消", DefaultValue = "0")] // public bool IsCancel { get; set; } // // /// // /// 是否TUI // /// // [SugarColumn(ColumnDescription = "是否TUI", DefaultValue = "0")] // public bool IsTUI { get; set; } /// /// 船名 t_code_vessel /// public string Vessel2N { get; set; } /// /// 船名Id t_code_vessel /// public long VesselId2N { get; set; } /// /// 二程航次 /// public string Voyno2N { get; set; } /// /// 交货日期 /// public DateTime DeliveryDate { get; set; } /// /// 场站联系人 /// public string YardATTN { get; set; } /// /// 场站联系方式 /// public string YardTel { get; set; } /// /// 销售公司Id /// public long SaleOrgId { get; set; } /// /// 中转港Id /// public long TransPortId { get; set; } /// /// 中转港 /// public string TransPort { get; set; } /// /// 转运备注 /// public string TransRemark { get; set; } /// /// 截单备注 /// public string CloseDocRemark { get; set; } /// /// 订舱备注 /// public string BookingRemark { get; set; } /// /// 预录 /// public int PreRecord { get; set; } = 0; /// /// 备注 /// public string Note { get; set; } = ""; /// /// 中转港代码 /// public string TransPortCode { get; set; } /// /// 第三付款地 /// [SugarColumn(ColumnDescription = "第三付款地", IsNullable = true, Length = 50)] public string ThirdPayAt { get; set; } /// /// 发货人 t_info_client CUSTNAME /// public string Shipper { get; set; } /// /// 收货人 t_info_client CUSTNAME /// public string Consignee { get; set; } /// /// 通知人 t_info_client CUSTNAME /// public string NotifyParty { get; set; } /// /// 内部航次 /// public string InnerVoyno { get; set; } /// /// 第二通知人Id t_info_client CUSTNAME /// public long? SecondNotifyPartyId { get; set; } /// /// 第二通知人 t_info_client CUSTNAME /// public string SecondNotifyParty { get; set; } /// /// 第二通知人内容 /// public string SecondNotifyPartyContent { get; set; } /// /// 委托单位联系人Id /// public long CustomerContactId { get; set; } /// /// 场站联系人Id /// public long YardContactId { get; set; } /// /// 车队联系人Id /// public long CarrierContactId { get; set; } /// /// 第三付款地Id /// public long ThirdPayAtId { get; set; } /// /// 预付地点Id /// public long PayableAtId { get; set; } /// /// 拆票或合票标志 1-拆票 2-合票 /// public int SplitOrMergeFlag { get; set; } /// /// Desc:单证人员 /// public string DocName { get; set; } /// /// 操作员名称 /// public string OperatorName { get; set; } /// /// 客服名称 /// public string CustomerServiceName { get; set; } /// /// 外国客服名称 /// public string ForeignCustomerServiceName { get; set; } /// /// 截VGM时间 /// public DateTime? VGMCloseDate { get; set; } /// /// 单证备注 /// public string DocRemark { get; set; } /// /// 操作备注 /// public string OperatorRemark { get; set; } /// /// 申请箱使 /// public string ApplyCtnRemark { get; set; } /// /// 客户编号 /// public string CustomerNum { get; set; } /// /// 国内发货人 t_info_client CUSTNAME /// public long? ShipperCnId { get; set; } /// /// 国内发货人 t_info_client CUSTNAME /// public string ShipperCn { get; set; } } /// /// 验证 /// public class SeaExportReqValidator : AbstractValidator { /// /// 构造函数 /// public SeaExportReqValidator() { this.RuleFor(o => o.BusinessDate) .NotEmpty().WithName("录入日期"); this.RuleFor(o => o.AccountDate) .NotEmpty().WithName("财务日期"); this.RuleFor(o => o.BLType) .NotEmpty().WithName("装运方式"); } }