package com.gree.mall.manager.bean.workorder;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

@Data
@ApiModel
public class SettlePoolWorkerVO {

    @ApiModelProperty(value = "账单编号")
    private String poolId;

    @ApiModelProperty(value = "月份")
    private String month;

    @ApiModelProperty(value = "商户编号")
    private String companyWechatId;

    @ApiModelProperty(value = "商户名称")
    private String companyWechatName;

    @ApiModelProperty(value = "网点编号")
    private String websitId;

    @ApiModelProperty(value = "网点名称")
    private String websitName;

    @ApiModelProperty(value = "师傅编号id")
    private String workerId;

    @ApiModelProperty(value = "工程师信息")
    private String workerName;

    @ApiModelProperty(value = "联系电话")
    private String workerMobile;

    @ApiModelProperty(value = "身份证")
    private String workerIdcard;

    @ApiModelProperty(value = "结算金额（元）")
    private BigDecimal totalAmount;

    @ApiModelProperty(value = "发放状态 NO=已发放 YES=未发放")
    private String status;

    @ApiModelProperty(value = "汇总人")
    private String poolCreateBy;

    @ApiModelProperty(value = "汇总时间")
    private Date poolCreateTime;

    @ApiModelProperty(value = "发放人")
    private String poolUpdateBy;

    @ApiModelProperty(value = "发放时间")
    private Date poolUpdateTime;

    @ApiModelProperty(value = "结算单id")
    private String orderId;

    @ApiModelProperty(value = "工单编号")
    private String orderBaseId;

    @ApiModelProperty(value = "客户名称")
    private String customerName;

    @ApiModelProperty(value = "客户电话")
    private String customerMobile;

    @ApiModelProperty(value = "详细地址")
    private String customerAddress;

    @ApiModelProperty(value = "工单状态 DYY=待预约 DSHPG=待商户派工 DWDPG=待网点派工 DJD=待接单 FWZ=服务中 YCD=异常单 YWG=已完工待结算 YJS=已结算 YQX=已取消")
    private String orderStatus;

    @ApiModelProperty(value = "工单创建时间")
    private Date orderCreateTime;

    @ApiModelProperty(value = "师傅完工时间")
    private Date workerEndTime;

    @ApiModelProperty(value = "所属业务线   INSTALL=安装 REPAIR=维修")
    private String orderType;

    @ApiModelProperty(value = "所属业务线名称")
    private String orderTypeText;

    @ApiModelProperty(value = "工单类型")
    private String orderSmallType;

    @ApiModelProperty(value = "工单类型名称")
    private String orderSmallTypeText;

    @ApiModelProperty(value = "品牌")
    private String brand;

    @ApiModelProperty(value = "工单来源")
    private String orderSource;

    @ApiModelProperty(value = "工单渠道")
    private String orderChannel;

    @ApiModelProperty(value = "大类编号")
    private String parentCategoryId;

    @ApiModelProperty(value = "大类名称")
    private String parentCategoryName;

    @ApiModelProperty(value = "小类编号")
    private String categoryId;

    @ApiModelProperty(value = "小类名称")
    private String categoryName;

    @ApiModelProperty(value = "机型名称")
    private String goodsName;

    @ApiModelProperty(value = "工单数量")
    private Integer orderNum;

    @ApiModelProperty(value = "结算单类型")
    private String settleOrderType;

    @ApiModelProperty(value = "安装功率")
    private String installLabel;

    @ApiModelProperty(value = "安装结算标准")
    private BigDecimal installNormAmount;

    @ApiModelProperty(value = "维修质保类型 INSIDE=保内 OUT=保外")
    private String repairLabel;

    @ApiModelProperty(value = "维修上门费")
    private BigDecimal repairAmount;

    @ApiModelProperty(value = "维修费用结算比例")
    private BigDecimal repairRate;

    @ApiModelProperty(value = "维修结算费用")
    private BigDecimal repairSettleAmount;

    @ApiModelProperty(value = "其它费用类型")
    private String otherType;

    @ApiModelProperty(value = "其它费用规格")
    private String otherLabel;

    @ApiModelProperty(value = "其它费用单价")
    private BigDecimal otherPrice;

    @ApiModelProperty(value = "奖罚单id")
    private String examineProjectId;

    @ApiModelProperty(value = "奖罚单考核项目")
    private String examineProject;

    @ApiModelProperty(value = "奖罚单考核类型  PUNISH=惩罚 REWARD=奖励")
    private String examineType;

    @ApiModelProperty(value = "结算数量")
    private Integer settleNum;

    @ApiModelProperty(value = "结算金额")
    private BigDecimal settleAmount;

    @ApiModelProperty(value = "备注")
    private String remark;
}
