using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Myshipping.Application
{
///
/// 马士基订舱请求
///
public class MSKBookingDto
{
///
/// 记录ID
///
public Nullable id { get; set; }
///
/// 船公司代码
///
public string carrierId { get; set; }
///
/// 订舱ID
///
public long bookingId { get; set; }
///
/// 合同唯一id
///
[RegularExpression("[a-zA-Z0-9_/,-]{1,50}",ErrorMessage = "合同号格式错误 [a-zA-Z0-9_/,-]{1,50}")]
public string priceReference { get; set; }
///
/// 产品类型(MaerskSpot, SealandSpot, MaerskContract)
///
public string productCode { get; set; }
///
/// 请求类别, 目前只能传 BOOKAPI
///
public string sender { get; set; }
///
/// 订舱公司名称
///
public string bookedByCompanyName { get; set; }
///
/// 承运人id,用于识别预定方
///
public string bookedByMaerskPartyCode { get; set; }
///
/// 订舱公司名称联系人姓名
///
public string bookedByCompanyContactName { get; set; }
///
/// 订舱公司名称联系人邮箱
///
public string bookedByCompanyContactEmail { get; set; }
///
/// 订舱公司名称联系人电话号码
///
public string bookedByCompanyContactPhone { get; set; }
///
/// 当前订舱公司是否也是合约方 true-标识合约信息跟订舱公司一致,false-标识有单独的合约方
///
public bool isBookingPartOwnPrice { get; set; }
///
/// 价格所有者公司名称
///
public string priceOwnerCompanyName { get; set; }
///
/// 价格所有者id
///
public string priceOwnerMaerskPartyCode { get; set; }
///
/// 价格所有者联系人姓名
///
public string priceOwnerContactName { get; set; }
///
/// 价格所有者联系人邮箱
///
public string priceOwnerContactEmail { get; set; }
///
/// 价格所有者联系人电话号码
///
public string priceOwnerContactPhone { get; set; }
///
/// 承运人代码(MAEU, SEAU, SEJJ, MCPU, MAEI)
///
public string carrierCode { get; set; }
///
/// 最早起运日期, 不可小于当前日期
///
public string earliestDepartureDate { get; set; }
///
/// 出口服务类型(CY, SD, CFS)
///
public string exportServiceMode { get; set; }
///
/// 进口服务类型
///
public string importServiceMode { get; set; }
///
/// 收货地UN地点代码
///
public string placeOfReceiptUnLocCode { get; set; }
///
/// 收货地城市英文名称
///
public string placeOfReceiptCityName { get; set; }
///
/// 收货地国家代码
///
public string placeOfReceiptCountryCode { get; set; }
///
/// 交货地UN地点代码
///
public string placeOfDeliveryUnLocCode { get; set; }
///
/// 交货地城市英文名称
///
public string placeOfDeliveryCityName { get; set; }
///
/// 交货地国家代码
///
public string placeOfDeliveryCountryCode { get; set; }
///
/// 出发时间, ISO时间格式
///
public Nullable originDepartureDateTimeLocal { get; set; }
///
/// 到达时间, ISO时间格式
///
public Nullable destinationArrivalDateTimeLocal { get; set; }
///
/// 是否冷冻处理
///
public bool isReefer { get; set; } = false;
///
/// 温度探头的数量
///
public Nullable noOfProbes { get; set; }
///
/// 温度
///
public Nullable temperature { get; set; }
///
/// 通风
///
[Range(0,285)]
public Nullable ventilation { get; set; }
///
/// 湿度
///
public Nullable humidity { get; set; }
///
/// 货物代码
///
[RegularExpression("^[0-9]{6}$",ErrorMessage = "货物代码格式错误,应提交6位数字代码")]
public string commodityCode { get; set; }
///
/// 货物名称
///
public string commodityName { get; set; }
///
/// 货物类型, 箱型, 为REEFER 时, 需要上传reeferSettings参数中的温度,通风,湿度等(DRY, REEFER)
///
public string cargoType { get; set; }
///
/// 重量
///
public Nullable totalCargoWeight { get; set; }
///
/// 货物总体积
///
public Nullable totalCargoVolume { get; set; }
///
/// 货物代码类型, 目前只能传 MaerskCode
///
public string commodityCodeType { get; set; }
///
/// 船名代码
///
public string carrierVesselCode { get; set; }
///
/// 船名
///
public string vesselName { get; set; }
///
/// 航次号
///
public string exportVoyageNumber { get; set; }
///
/// 运输方式(BAR, BCO, DST, FEF, FEO, MVS, RCO, RR, SSH, TRK, VSF, VSL, VSM)
///
public string transportMode { get; set; }
///
/// 预计航行天数
///
public Nullable EstSailingDays { get; set; }
///
/// 合约号主键
///
public Nullable priceReferenceId { get; set; }
///
/// 合约号名称
///
public string priceReferenceName { get; set; }
///
/// 箱型箱量列表
///
public List ctns { get; set; }
}
public class MSKBookingCtnInfo
{
///
/// 箱型
///
public string ctnCode { get; set; }
///
/// 箱量
///
public Nullable ctnNum { get; set; }
///
/// 箱内重量
///
public Nullable ctnSufferWeight { get; set; }
///
/// 集装箱主键
///
public Nullable id { get; set; }
}
}