package com.zfire.mall.manager.bean.front;

import com.zfire.mall.manager.annotation.ZfireField;
import com.zfire.mall.manager.constant.CodeStatusConstant;
import com.zfire.mall.manager.enums.*;
import com.zfire.mall.manager.plus.entity.CustomerOrder;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * @author changelin
 */
@ApiModel
@Data
public class CustomerOrderBean   {

   /* @ZfireField(tbName = "co")
    @ApiModelProperty(value = "同步嘉贤状态")
    private SyncStatusEnum syncStatus;
*/
    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "嘉贤订单号")
    private String jiaxianOrderId;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "客户销售单号")
    private String id;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "状态")
    private JiaXianOrderTypeEnum status;

    @ZfireField(hide = true,frontCode = CodeStatusConstant.CUSTOMER_ORDER_STATUS,tbName = "co",colName = "status",type = "select")
    @ApiModelProperty(value = "状态")
    private String statusName;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "订单时间")
    private Date orderTime;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "配送时间")
    private Date pickTime;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "经销商编号")
    private String customerNumber;

    @ZfireField(hide = true,tbName = "co")
    @ApiModelProperty(value = "经销商id")
    private String customerId;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "经销商名称")
    private String customerName;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "用户名称")
    private String userName;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "用户电话")
    private String phone;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "省")
    private String province;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "市")
    private String city;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "区")
    private String area;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "街道")
    private String street;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "收货地址")
    private String receAddress;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "仓库")
    private JiaXianStockTypeEnum stockType;

    @ZfireField(hide = true,colName = "stock_type" ,frontCode = CodeStatusConstant.STOCK_TYPE,type = "select")
    @ApiModelProperty(value = "发货仓名称")
    private String stockTypeName;

    @ZfireField(tbName = "coi")
    @ApiModelProperty(value = "物料编号")
    private String materialCode;

    @ZfireField(tbName = "coi")
    @ApiModelProperty(value = "产品编码")
    private String materialOldNumber;

    @ZfireField(tbName = "coi")
    @ApiModelProperty(value = "物料名称")
    private String materialName;

    @ZfireField(hide = true,tbName = "coi")
    @ApiModelProperty(value = "物料id")
    private String materialId;

    @ZfireField(tbName = "coi")
    @ApiModelProperty(value = "规格型号")
    private String specification;

    @ZfireField(tbName = "coi",type = "number")
    @ApiModelProperty(value = "发货数量")
    private Integer qty;

    @ZfireField(tbName = "coi",hide = true,type = "number")
    @ApiModelProperty(value = "可退货数量")
    private Integer refundQty;

    @ZfireField(type = "number",tbName = "coi",colName = "real_qty")
    @ApiModelProperty(value = "退货数量")
    private Integer refundOrderQty;

    @ZfireField(type = "number",tbName = "cs",isQuery = false)
    @ApiModelProperty(value = "嘉贤仓库结存数量")
    private BigDecimal stockQty;

    @ZfireField(type = "number",tbName = "cs",isQuery = false)
    @ApiModelProperty(value = "自有仓库结存数量")
    private BigDecimal customerStockQty;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "备注")
    private String notes;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "制单人")
    private String createBy;

    @ZfireField(tbName = "co")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
 @ZfireField(tbName = "co")
    @ApiModelProperty(value = "安装信息编号")
    private String gongDanId;

 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "总部信息编号")
 private String pgid;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "销售网点编号")
 private String salesNumber;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "销售网点名称")
 private String salesWname;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "售后网点编号")
 private String installNumber;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "售后网点名称")
 private String installName;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "工单状态")
 private GongDanOrderTypeEnum orderState;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "派工状态")
 private GongDanPaiGongTypeEnum appointState;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "服务人员名称")
 private String workerName;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "服务人员编号")
 private String workerNumber;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "师傅电话")
 private String workerPhone;

 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "信息员名称")
 private String adminOfficerName;
 @ZfireField(tbName = "co")
 @ApiModelProperty(value = "信息员编号")
 private String adminOfficerNumber;



}
