/**
 * 中车电子商城订单扩展 VO
 */
export interface OrderMainCrrcExtVO {
  /**
   * 主键ID，建议与 order_main.id 保持一致（一对一）
   */
  id: string | number;

  /**
   * 中车电子商城订单号（orderNo），幂等判断关键字段
   */
  crrcOrderNo: string;

  /**
   * 采购平台订单号（purchaserOrderNo），中车内部采购系统订单编号
   */
  purchaserOrderNo: string;

  /**
   * 订单类型（preOrder）：0普通订单 1预购单 2预存单
   */
  preOrder: number;

  /**
   * 中车订单状态（orderStatus），原始状态值，做状态映射用
   */
  crrcOrderStatus: string;

  /**
   * 电商系统订单号（mallOrderNo），中车确认接单后返回
   */
  mallOrderNo: string;

  /**
   * 收货人姓名（name）
   */
  receiverName: string;

  /**
   * 一级地址编码：收货人省份地址编码
   */
  provinceId: string;

  /**
   * 省名称
   */
  provinceName: string;

  /**
   * 二级地址编码：收货人市级地址编码
   */
  cityId: string;

  /**
   * 市名称
   */
  cityName: string;

  /**
   * 三级地址编码：收货人县（区）级地址编码
   */
  countyId: string;

  /**
   * 区名称
   */
  countyName: string;

  /**
   * 四级地址编码：收货人乡镇地址编码(如果该地区有四级地址，则必须传递四级地址，没有四级地址则传 0)
   */
  townId: string;

  /**
   * 乡镇名称
   */
  townName: string;

  /**
   * 收货详细地址（address）
   */
  detailAddress: string;

  /**
   * 邮编（zip）
   */
  zip: string;

  /**
   * 收货人手机号（mobile）
   */
  mobile: string;

  /**
   * 收货人座机号（phone）
   */
  phone: string;

  /**
   * 收货人邮箱（email）
   */
  email: string;

  /**
   * 下单人姓名（buyer）
   */
  buyerName: string;

  /**
   * 下单人手机号（buyerMobile）
   */
  buyerMobile: string;

  /**
   * 采购单位名称（purchaserName）
   */
  purchaserName: string;

  /**
   * 采购部门名称（purchaserDeptName），多级结构字符串
   */
  purchaserDeptName: string;

  /**
   * 支付方式（paymentType）：01账期 02按单 03混合支付
   */
  paymentType: string;

  /**
   * 支付渠道（payClient）：1微信 2支付宝
   */
  payClient: string;

  /**
   * 支付流水号（paySerialNum）
   */
  paySerialNum: string;

  /**
   * 账期支付金额（payAccount），混合支付时必填
   */
  payAccount: number;

  /**
   * 现金支付金额（payMoney），混合支付时必填
   */
  payMoney: number;

  /**
   * 预存款支付金额（payPrestore）
   */
  payPrestore: number;

  /**
   * 是否需要发货凭证（voucher）：0否 1货物照片
   */
  voucher: string;

  /**
   * 中车订单创建时间（orderTime），格式YYYY-MM-DD HH:MM:SS
   */
  orderTime: string;

  /**
   * 中车接口原始返回JSON报文（留存做审计与问题排查）
   */
  rawJson: string;

  /**
   * 状态（0正常 1停用）
   */
  status: string;

  /**
   * 分配原因
   */
  remark: string;
}

/**
 * 中车电子商城订单扩展 BO
 */
export interface OrderMainCrrcExtForm extends BaseEntity {
  /**
   * 主键ID，建议与 order_main.id 保持一致（一对一）
   */
  id?: string | number;

  /**
   * 中车电子商城订单号（orderNo），幂等判断关键字段
   */
  crrcOrderNo?: string;

  /**
   * 采购平台订单号（purchaserOrderNo），中车内部采购系统订单编号
   */
  purchaserOrderNo?: string;

  /**
   * 订单类型（preOrder）：0普通订单 1预购单 2预存单
   */
  preOrder?: number;

  /**
   * 中车订单状态（orderStatus），原始状态值，做状态映射用
   */
  crrcOrderStatus?: string;

  /**
   * 电商系统订单号（mallOrderNo），中车确认接单后返回
   */
  mallOrderNo?: string;

  /**
   * 收货人姓名（name）
   */
  receiverName?: string;

  /**
   * 一级地址编码：收货人省份地址编码
   */
  provinceId?: string;

  /**
   * 省名称
   */
  provinceName?: string;

  /**
   * 二级地址编码：收货人市级地址编码
   */
  cityId?: string;

  /**
   * 市名称
   */
  cityName?: string;

  /**
   * 三级地址编码：收货人县（区）级地址编码
   */
  countyId?: string;

  /**
   * 区名称
   */
  countyName?: string;

  /**
   * 四级地址编码：收货人乡镇地址编码(如果该地区有四级地址，则必须传递四级地址，没有四级地址则传 0)
   */
  townId?: string;

  /**
   * 乡镇名称
   */
  townName?: string;

  /**
   * 收货详细地址（address）
   */
  detailAddress?: string;

  /**
   * 邮编（zip）
   */
  zip?: string;

  /**
   * 收货人手机号（mobile）
   */
  mobile?: string;

  /**
   * 收货人座机号（phone）
   */
  phone?: string;

  /**
   * 收货人邮箱（email）
   */
  email?: string;

  /**
   * 下单人姓名（buyer）
   */
  buyerName?: string;

  /**
   * 下单人手机号（buyerMobile）
   */
  buyerMobile?: string;

  /**
   * 采购单位名称（purchaserName）
   */
  purchaserName?: string;

  /**
   * 采购部门名称（purchaserDeptName），多级结构字符串
   */
  purchaserDeptName?: string;

  /**
   * 支付方式（paymentType）：01账期 02按单 03混合支付
   */
  paymentType?: string;

  /**
   * 支付渠道（payClient）：1微信 2支付宝
   */
  payClient?: string;

  /**
   * 支付流水号（paySerialNum）
   */
  paySerialNum?: string;

  /**
   * 账期支付金额（payAccount），混合支付时必填
   */
  payAccount?: number;

  /**
   * 现金支付金额（payMoney），混合支付时必填
   */
  payMoney?: number;

  /**
   * 预存款支付金额（payPrestore）
   */
  payPrestore?: number;

  /**
   * 是否需要发货凭证（voucher）：0否 1货物照片
   */
  voucher?: string;

  /**
   * 中车订单创建时间（orderTime），格式YYYY-MM-DD HH:MM:SS
   */
  orderTime?: string;

  /**
   * 中车接口原始返回JSON报文（留存做审计与问题排查）
   */
  rawJson?: string;

  /**
   * 状态（0正常 1停用）
   */
  status?: string;

  /**
   * 分配原因
   */
  remark?: string;
}

/**
 * 中车电子商城订单扩展查询参数
 */
export interface OrderMainCrrcExtQuery extends PageQuery {
  /**
   * 中车电子商城订单号（orderNo），幂等判断关键字段
   */
  crrcOrderNo?: string;

  /**
   * 采购平台订单号（purchaserOrderNo），中车内部采购系统订单编号
   */
  purchaserOrderNo?: string;

  /**
   * 订单类型（preOrder）：0普通订单 1预购单 2预存单
   */
  preOrder?: number;

  /**
   * 中车订单状态（orderStatus），原始状态值，做状态映射用
   */
  crrcOrderStatus?: string;

  /**
   * 电商系统订单号（mallOrderNo），中车确认接单后返回
   */
  mallOrderNo?: string;

  /**
   * 收货人姓名（name）
   */
  receiverName?: string;

  /**
   * 一级地址编码：收货人省份地址编码
   */
  provinceId?: string;

  /**
   * 省名称
   */
  provinceName?: string;

  /**
   * 二级地址编码：收货人市级地址编码
   */
  cityId?: string;

  /**
   * 市名称
   */
  cityName?: string;

  /**
   * 三级地址编码：收货人县（区）级地址编码
   */
  countyId?: string;

  /**
   * 区名称
   */
  countyName?: string;

  /**
   * 四级地址编码：收货人乡镇地址编码(如果该地区有四级地址，则必须传递四级地址，没有四级地址则传 0)
   */
  townId?: string;

  /**
   * 乡镇名称
   */
  townName?: string;

  /**
   * 收货详细地址（address）
   */
  detailAddress?: string;

  /**
   * 邮编（zip）
   */
  zip?: string;

  /**
   * 收货人手机号（mobile）
   */
  mobile?: string;

  /**
   * 收货人座机号（phone）
   */
  phone?: string;

  /**
   * 收货人邮箱（email）
   */
  email?: string;

  /**
   * 下单人姓名（buyer）
   */
  buyerName?: string;

  /**
   * 下单人手机号（buyerMobile）
   */
  buyerMobile?: string;

  /**
   * 采购单位名称（purchaserName）
   */
  purchaserName?: string;

  /**
   * 采购部门名称（purchaserDeptName），多级结构字符串
   */
  purchaserDeptName?: string;

  /**
   * 支付方式（paymentType）：01账期 02按单 03混合支付
   */
  paymentType?: string;

  /**
   * 支付渠道（payClient）：1微信 2支付宝
   */
  payClient?: string;

  /**
   * 支付流水号（paySerialNum）
   */
  paySerialNum?: string;

  /**
   * 账期支付金额（payAccount），混合支付时必填
   */
  payAccount?: number;

  /**
   * 现金支付金额（payMoney），混合支付时必填
   */
  payMoney?: number;

  /**
   * 预存款支付金额（payPrestore）
   */
  payPrestore?: number;

  /**
   * 是否需要发货凭证（voucher）：0否 1货物照片
   */
  voucher?: string;

  /**
   * 中车订单创建时间（orderTime），格式YYYY-MM-DD HH:MM:SS
   */
  orderTime?: string;

  /**
   * 状态（0正常 1停用）
   */
  status?: string;

  /**
   * 分配原因
   */
  remark?: string;

  /**
   * 日期范围参数
   */
  params?: any;
}