/**
 * 项目：-
 * @Author: xiongwei
 * @Date: 2022-06-28 11:50:00
 */

import { BasePageParams, PageResult, ApiResponse } from './baseModel';
import { BatchOrderDetail } from './batchOrderDetail';

export interface BatchOrderParams extends BasePageParams {
  /**
   * ID系统自动生成
   */
  id?: number;
  /**
   * ID系统自动生成 IN值List
   */
  idList?: Array<number>;
  /**
   * 经销商id
   */
  distributorId?: number;
  /**
   * 订单编号
   */
  orderSn?: string;
  /**
   * 出库仓
   */
  exWarehouse?: string;
  /**
   * 供应商名称
   */
  distributorName?: string;
  /**
   * 自有订单编号
   */
  ownOrderSn?: string;
  /**
   * 业务员id
   */
  saleUserId?: number;
  /**
   * 业务员名称
   */
  saleUserName?: string;
  /**
   * 开票公司
   */
  invoicingCompany?: string;
  /**
   * 物流方式
   */
  logisticsMode?: string;
  /**
   * 接收人姓名
   */
  receiveName?: string;
  /**
   * 接收人电话
   */
  receivePhone?: string;
  /**
   * 收货地址
   */
  address?: string;
  /**
   * 工单状态
   */
  status?: String;
  /**
   * 工单状态 IN值List
   */
  statusList?: Array<string>;
  /**
   * 备注
   */
  remark?: string;
  /**
   * 是否是主订单
   */
  type?: String;
  /**
   * 是否是主订单 IN值List
   */
  typeList?: Array<string>;
  /**
   * 是否删除
   */
  deleteStatus?: String;
  /**
   * 是否删除 IN值List
   */
  deleteStatusList?: Array<string>;
  /**
   * 操作人ID
   */
  editorId?: number;
  /**
   * 操作人
   */
  editorName?: string;
  /**
   * create_time
   */
  createTime?: Date;
  /**
   *  下限值(大于等于)
   */
  createTimeFrom?: Date;
  /**
   *  上限值(小于)
   */
  createTimeTo?: Date;
  /**
   * update_time
   */
  updateTime?: Date;
  /**
   *  下限值(大于等于)
   */
  updateTimeFrom?: Date;
  /**
   *  上限值(小于)
   */
  updateTimeTo?: Date;
  /**
   * 其他参数
   */
  [key: string]: any;
}

export interface BatchOrder {
  batchOrderId: number | undefined;
  /**
   * ID系统自动生成
   */
  id?: number;
  /**
   * ID系统自动生成
   */
  batchOrderDetailList?: Array<BatchOrderDetail>;
  batchWorkOrderDetailList?: Array<BatchOrderDetail>;
  /**
   * 经销商id
   */
  distributorId?: number;
  /**
   * 订单编号
   */
  orderSn?: string;
  /**
   * 出库仓
   */
  exWarehouse?: string;
  /**
   * 供应商名称
   */
  distributorName?: string;
  /**
   * 自有订单编号
   */
  ownOrderSn?: string;
  /**
   * 业务员id
   */
  saleUserId?: number;
  /**
   * 业务员名称
   */
  saleUserName?: string;
  /**
   * 开票公司
   */
  invoicingCompany?: string;
  /**
   * 物流方式
   */
  logisticsMode?: string;
  /**
   * 接收人姓名
   */
  receiveName?: string;
  /**
   * 接收人电话
   */
  receivePhone?: string;
  /**
   * 收货地址
   */
  address?: string;
  /**
   * 工单状态
   */
  status?: String;
  /**
   * 备注
   */
  remark?: string;
  /**
   * 是否是主订单
   */
  type?: String;
  /**
   * 是否删除
   */
  deleteStatus?: String;
  /**
   * 操作人ID
   */
  editorId?: number;
  /**
   * 操作人
   */
  editorName?: string;
  /**
   * create_time
   */
  createTime?: Date;
  /**
   * update_time
   */
  updateTime?: Date;
}

export type BatchOrderPageResult = PageResult<BatchOrder>;

export type BatchOrderPageResponse = ApiResponse<BatchOrderPageResult>;

export type BatchOrderResponse = ApiResponse<BatchOrder>;
