package com.hzs.scm.io.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.hzs.common.core.annotation.Transaction;
import com.hzs.common.core.constant.EnumsPrefixConstants;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @description: 供应链返回到会员端vo
 * @author: sui q
 * @time: 2023/12/7 16:38
 * @classname: PoOrderVo
 * @package_name: com.hzs.scm.po.vo
 * version 1.0.0
 */
@Data
public class IoOrderVo implements Serializable {

    /**
     * 主键
     */
    private Long pkId;

    /**
     * 供应商名称
     */
    private String cubasdocName;

    /**
     * 供应商 取bd_cubasdoc 类型为1 2的
     */
    private Integer pkCubasdoc;

    /**
     * 采购公司
     */
    private Integer pkCorp;

    /**
     * 部门名称
     */
    private String deptName;

    /**
     * 管理员名称
     */
    private String managerName;

    /**
     * 采购组织名称
     */
    private String corpName;

    /**
     * 供应链订单状态
     */
    @Transaction(transactionKey = EnumsPrefixConstants.SCM_ORDER_STATUS)
    private Integer orderStatus;

    private String orderStatusVal;

    /**
     * 打印状态
     */
    @Transaction(transactionKey = EnumsPrefixConstants.DEALER_YES_NO)
    private Integer printStatus;

    private String printStatusVal;

    /**
     * 订单日期 2023-10
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date orderDate;

    /**
     * 采购部门
     */
    private Integer pkDept;

    /**
     * 采购人
     */
    private Long pkWhsmanager;

    /**
     * 汇率
     */
    private Integer pkRate;

    /**
     * 总数量
     */
    private BigDecimal totalNum;

    /**
     * 订单编号
     */
    private String orderCode;

    /**
     * 备注
     */
    private String remark;

    /**
     * 用途
     */
    private Integer pkPurpose;

    private String purpose;

    /**
     * 收货人
     */
    private String recName;

    /**
     * 收货电话
     */
    private String recPhone;

    /**
     * 省
     */
    private Integer recProvince;

    /**
     * 市
     */
    private Integer recCity;

    /**
     * 县
     */
    private Integer recCounty;

    /**
     * 省
     */
    private String recProvinceName;

    /**
     * 市
     */
    private String recCityName;

    /**
     * 县
     */
    private String recCountyName;

    /**
     * 收货地址
     */
    private String recAddress;

    @Transaction
    private List<IoOrderBVo> scmReturnbVoList;
}
