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

import com.gree.mall.manager.annotation.ZfireField;
import com.gree.mall.manager.enums.IsEnum;
import com.gree.mall.manager.enums.workorder.AppraiseApplyStatusEnum;
import com.gree.mall.manager.enums.workorder.AppraiseOnusEnum;
import com.gree.mall.manager.enums.workorder.AppraiseSourceEnum;
import com.gree.mall.manager.enums.workorder.AppraiseStatusEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

@Data
@ApiModel
@ZfireField(tbName = "a")
public class PgAppraiseApplyVO {

    @ZfireField(hide = true)
    @ApiModelProperty(value = "id")
    private String id;

    @ApiModelProperty(value = "状态")
    private AppraiseApplyStatusEnum status;

    @ApiModelProperty(value = "审核结果")
    private AppraiseStatusEnum examineResult;

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

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

    @ZfireField(hide = true)
    @ApiModelProperty(value = "商户id")
    private String companyWechatId;

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

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

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

    @ZfireField(hide = true)
    @ApiModelProperty(value = "主要师傅id")
    private String workerId;

    @ApiModelProperty(value = "师傅名称")
    private String workerName;

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

    @ZfireField(hide = true)
    @ApiModelProperty(value = "师傅电话")
    private String workerMobile;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "师傅身份证")
    private String workerIdcard;

    @ApiModelProperty(value = "完工时间")
    private Date overTime;

    @ApiModelProperty(value = "首次评价")
    private AppraiseStatusEnum appraiseStatus;

    @ApiModelProperty(value = "首次评价内容")
    private String appraiseContent;

    @ApiModelProperty(value = "评价来源")
    private AppraiseSourceEnum appraiseSource;

    @ApiModelProperty(value = "二次申诉")
    private IsEnum isSecond;

    @ApiModelProperty(value = "申诉理由")
    private String reason;

    @ApiModelProperty(value = "申诉发起人")
    private String applyBy;

    @ApiModelProperty(value = "申诉时间")
    private Date applyTime;

    @ApiModelProperty(value = "中心判定网点")
    private AppraiseOnusEnum websitResult;

    @ApiModelProperty(value = "中心判定服务人员")
    private AppraiseOnusEnum workerResult;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "问题大类id")
    private String parentCategoryId;

    @ApiModelProperty(value = "问题大类")
    private String parentCategoryName;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "问题小类id")
    private String categoryId;

    @ApiModelProperty(value = "问题小类")
    private String categoryName;

    @ApiModelProperty(value = "网点是否引导用户接听400回访电话")
    private IsEnum isWebsitCall;

    @ApiModelProperty(value = "信息部审核时间")
    private Date infoConfirmTime;

    @ApiModelProperty(value = "结算组审核时间")
    private Date settleConfirmTime;

    @ApiModelProperty(value = "驳回不可再申诉操作人")
    private String closeBy;

    @ApiModelProperty(value = "驳回不可再申诉操作时间")
    private Date closeTime;

    @ApiModelProperty(value = "驳回可重申诉操作人")
    private String rejectBy;

    @ApiModelProperty(value = "驳回可重申诉操作时间")
    private Date rejectTime;

    @ZfireField(hide = true)
    @ApiModelProperty(value = "二次申诉创建时间")
    private Date secondCreateTime;

    @ZfireField(hide = true, ignoreSelect = true)
    @ApiModelProperty(value = "二次申诉按钮是否显示")
    private String showSecondBtn;
}
