package com.zfire.mall.manager.bean;

import com.zfire.mall.manager.annotation.ZfireField;
import com.zfire.mall.manager.constant.SysDictConstant;
import com.zfire.mall.manager.enums.IsEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 销售执行明细
 */
@ZfireField(tbName = "a")
@ApiModel
@Data
public class OrderExecBean {
    @ApiModelProperty("厂产品代码")
    private String materialOldNumber;
    @ApiModelProperty("制单日期")
    private Date createTime;
    @ApiModelProperty("订单日期")
    private Date theTime;
    @ApiModelProperty("销售订单号")
    private String id;

    @ApiModelProperty("是否剔除仓储账单")
    private String isCost;

    @ApiModelProperty("使用单位")
    private String refUseUnit;
    @ApiModelProperty("经销商编码")
    private String customerNumber;
    @ApiModelProperty("经销商名称")
    private String customerName;
    @ApiModelProperty("销售类型编号")
    private String saleTypeCode;
    @ApiModelProperty("销售类型")
    private String saleTypeName;
    @ApiModelProperty("存货名称")
    private String materialName;
    @ApiModelProperty("存货编码")
    private String materialCode;
    @ApiModelProperty("规格型号")
    private String specification;
    @ApiModelProperty("订单未发货数量")
    private Integer refundableQty;
    @ApiModelProperty("总数量")
    private Integer qty;
    @ApiModelProperty("退货数量")
    private Integer retiredQty;
    @ApiModelProperty("单价")
    private BigDecimal price;
    @ApiModelProperty("订单金额")
    private BigDecimal payAmount;
    @ApiModelProperty("订单返利金额")
    private BigDecimal payRebateAmount;
    @ApiModelProperty("发货金额")
    private BigDecimal hasSendAmount;
    @ApiModelProperty("发货数量")
    private Integer hasSendQty;
    @ApiModelProperty("直调数量")
    private Integer directTransferQty;
    @ApiModelProperty("退货金额")
    private BigDecimal retiredAmount;
    @ApiModelProperty("表头业务员id")
    private String serviceId;
    @ApiModelProperty("表头业务员名称")
    private String serviceName;
    @ApiModelProperty("表体业务员id")
    private String itemServiceId;
    @ApiModelProperty("表体业务员名称")
    private String itemServiceName;
    @ApiModelProperty("归属业务员ID")
    private String newServiceId;
    @ApiModelProperty("归属业务员名称")
    private String newServiceName;
    @ApiModelProperty("销售政策编码")
    private String policyCode;
    @ApiModelProperty("销售政策名称")
    private String policyTitle;
    @ApiModelProperty("月份")
    private String month;
    @ApiModelProperty("项目名称")
    private String projectName;
    @ApiModelProperty("备注")
    private String remark;
    @ApiModelProperty("表体备注")
    private String itemRemark;
    @ApiModelProperty("业务区域")
    private String area;
    @ApiModelProperty("退货数量")
    private Integer refundProductQty;
    @ApiModelProperty("退货金额")
    private Integer refundProductAmount;

    @ApiModelProperty("现金钱包")
    private String walletName;
    @ApiModelProperty("返利钱包")
    private String rebateWalletName;
    @ApiModelProperty("直调状态")
    private String directTransferStatusName;
    @ApiModelProperty("存货名称")
    private String k3CategoryName;

    @ApiModelProperty("工程登录编号")
    private String refEnginRecordNo;
    @ApiModelProperty("工程编号")
    private String refProjectNo;
    @ApiModelProperty("文件编号")
    private String fileNo;
    @ApiModelProperty("机型类别")
    private String refMachineType;
    @ApiModelProperty("项目名称")
    private String refProjectName;
    @ApiModelProperty("订单明细id")
    private String orderItemId;
    @ApiModelProperty("实际总折扣金额")
    private BigDecimal totalDiscAmount;
    @ApiModelProperty("是否置换")
    private Boolean isDisplaceOrder;

    @ApiModelProperty("单个商品的返利金额")
    private BigDecimal singleRebateAmount;
    @ApiModelProperty("单个商品的折扣金额")
    private BigDecimal discAmount;


    @ApiModelProperty(value = "经销商集团名称")
    private String customerGroupName;
    @ApiModelProperty("金蝶部门")
    private String k3OrgName;

    @ApiModelProperty("物料分组")
    private String materialGroupName;

    @ApiModelProperty("原供价")
    private BigDecimal orgPrice;
    @ApiModelProperty("价格类型")
    private String priceType;

    @ApiModelProperty("审核人昵称")
    private String examineName;
    @ApiModelProperty("审核时间")
    private Date examineTime;
    @ApiModelProperty("审核状态")
    private String examineStatus;

    @ApiModelProperty("项目说明")
    private String refProjectNote;

    @ApiModelProperty("货满有效期")
    private String fullCostTime;


}
