interface PageResult<T> {
  isLoading?: boolean
  noMoreData?: boolean,
  total: number;
  list: T[];
  pageNum: number;
  pageSize: number;
}
interface Order {
  id?: number;
  deviceId?: number; //设备id
  deviceName?: string; // 设备名称
  userId?: number | string; //供应商id
  cardId?: number; //库存卡id
  cardNumber?: string; //undefined
  userName?: string; //undefined
  productId?: number | string; //产品id
  productName?: string; //undefined
  imagesId?: number | undefined; //弃用
  imageUrls?: string; //弃用
  carNumber: string; //车牌号
  receiptNumber?: string; //收货单号
  grossWeight?: number; //毛重
  tare?: string; //皮重
  grossTime?: string; //过毛日期
  tareTime?: string; //过皮日期
  netWeight?: number; //净重
  buttonType?: number; //扣杂状态：0扣杂1扣点
  points?: number; //扣点
  buckleMiscellaneous?: number; //扣杂
  price?: number; //单价
  balanceTotalPrice?: number; //结算总价 实际付款 
  totalPrice?: number; //实际总价 预估价格
  weighingMethod?: number; //称重方式：0：有皮重 1：零皮重
  multiCategory?: number; //多品类：0：单品类 1：多品类
  notes?: string; //备注
  scaleStatus?: number; // 磅单状态:0：待定价1：待过皮2：待审核3：已审核待支付4：已支付
  paymentMethod?: string; //支付方式：0:未支付,1:现金支付，2：银行卡支付，3：线上支付（微信）4：支付宝
  updateTime?: string; //修改时间
  repairTime?: string; //补单时间
  createTime?: string; //创建时间
  updateUserId?: number; //修改人
  createUserId?: number; //创建人
  reviewerUserId?: string; //审核人
  reviewerUserName?: string; // 审核人名称
  pricingUserId?: string; //定价人
  pricingUserName?: string; //定价人名称
  fileList?: array;
  subtractNum?: number; // input 扣杂扣点参数
  isChecked?: boolean;
  [attrName: string]: any;
}
interface ReceiveSummaryCount {
  totalAmount?: number; // 审核过的收货订单
  totalPaid?: number; // 已支付的收货总量
  totalUnpaid?: number; // 未支付的收货总量
  totalPayment?: number; // 总支付金额
  totalPaidPrice?: number; // 已经支付的金额
  totalUnpaidPrice?: number; // 未支付的金额
  totalReceipt?: number; // 收货单数量已审核的
  averagePrice?: number; // 平均单价
  rankings?: Array;
}

interface ShipmentSummaryCount {
  totalAmount?: number; // 收货汇总：审核过收货总量
  totalPayShipment?: number; // 已支付的出货总
  totalUnPayShipment?: number; // 未支付的出货总量
  totalCollection?: number; // 总收款
  totalPayCollection?: number; // 已经收到的收款
  totalUnPayCollection?: number; // 未收到的收款
  totalReceipt?: number; // 收货单数量已审核的
  averagePrice?: number; // 平均单价
  rankings?: Array;
}
// 分页结构
interface OrderPage<T> {
  total: number;
  list: T;
  pageNum: number;
  pageSize: number;
}

interface ReceiveSummary {
  totalReceipt: number; // 本月总出货
  totalExpenditure: number; // 本月总收入
  toBePriced: number; // 待收货
  toBeTare: number; // 待过皮重
  audit: number; // 付款审核
  toBePaid: number; // 待支付
}

type PageParams = {
  pageNum: number;
  pageSize: number;
  pricingUserId?: string; // 定价人
  userId?: string; // 供应商id
  productId?: string; // 产品id
  repairFlag?: boolean; // 是否为补单,true 是未补单，false是补单
  scaleStatus?: number; // 磅单状态:0：待定价1：待过皮2：待审核3：已审核待支付4：已支付
  isDeleted?: boolean;
  userName?: string; // 供应商名称
  receiptNumber?: string;
  startTime?:string;
  endTime?:string;
};

interface Shipment {
  id: string;
  userId?: number; //供应商id
  productId?: number; //产品id
  cardId?: number; //库存卡id
  imagesId?: number; //图片表id
  deviceId?: number; //设备id
  carNumber?: string; //车牌号
  scaleStatus?: number; //出库单状态
  orderNumber?: string; //订单编号
  grossWeight: number; //毛重
  grossTime?: string; //过毛时间
  tare: number; //皮重
  tareTime?: string; //过皮时间
  netWeight?: number; //净重
  number?: number; //数量
  notes?: string; //备注
  settlementNotes?: string; //结算备注
  deliveryMethod?: number; //提货方式:0:送货1:自提
  phone?: string; //手机号
  box?: string; //箱号
  title?: string; //封号
  freight?: number; //运费
  incidentals?: number; //杂费
  pricingPerson?: string; //定价人
  reviewerId?: string; //审核人
  buttonType: number; //扣点状态：默认0：扣杂1扣点
  points?: string; //扣点
  buckleMiscellaneous?: string; //扣杂
  unitPrice?: number; //结算单价
  estimatePrice?: number; //预估金额  结算总价
  totalPrice?: number; //结算金额 实际金额
  realIncome?: number; //实际收入 实际收入  实收金额
  errorPrice?: string; //误差金额
  repairTime?: string; //补单时间
  createTime?: string; //undefined
  createUserId?: string; //undefined
  updateUserId?: string; //undefined
  updateTime?: string; //undefined
  isDeleted?: string; //删除标识true删除，false未删除
  settlementWeight?: number; // 结算重量
  settlementGross: number; // 结算毛重
  settlementTare: number; // 结算皮重
  settlementNet?: number; // 结算净重
  signTime?: string; // 签收时间
  paymentMethod?: string; //支付方式：0:未支付,1:现金支付，2：银行卡支付，3：线上支付（微信）4：支付宝
  userType?: number; //用户类型0：刷脸1：刷卡
  [attrName: string]: any;
}

// 出货单排行
interface ShipmentRank {
  userId: number;
  userName: string;
  productId: number;
  productName: string; // 产品名称
  totalAmount: number; // 总收货量
  totalPayment: number; //总应付总额
  totalOrderNumber: number; // 收货单数量
  averagePrice: number; // 均价
}

// 出库分类
interface ShipmentTypeCount {
  totalAmount: number; // 收货汇总：审核过收货总量
  totalPayShipment: number; // 已支付的出货总量
  totalUnPayShipment: number; // 未支付的出货总量
  totalCollection: number; // 总收款
  totalPayCollection: number; // 已经收到的收款
  totalUnPayCollection: number; // 未收到的收款
  totalReceipt: number; // 收货单数量已审核的
  averagePrice: number; // 平均单价
  rankings: ShipmentRank[]; // 出货产品汇总
}

// 收货产品
interface ReceiveProduct {
  id?: string; // 收货产品id

  reProductsName?: string; //收货产品名称

  reCategoryId?: string; //收货分类id

  reCategoryName?: string;
  //收货分类名称

  substationName?: string;
  //分站名称

  minPrice?: string;
  //产品的最低价格

  maxPrice?: string;
  //产品的最高价格

  commonPrice?: string;
  //产品的常用价格

  isDeleted?: boolean; //逻辑删除 TRUE=是 FALSE=否
}

// 库存卡

interface StockCard {
  id: number
  cardCode?: string,
  type?: number, // 库存卡类型1=出库2=入库
  cardCode?: string,
  name?: string,
  customUserName?:string
}
