/*
 * @Author: Kane
 * @Date: 2023-03-16 09:32:53
 * @LastEditors: Kane
 * @FilePath: /desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/archievement/DepartmentArchievementQueryResult.java
 * @Description: 
 * 
 * Copyright (c) ${2022} by Kane, All Rights Reserved. 
 */

package com.cpic.xim.web.controllers.archievement;

import java.util.Vector;
import com.fasterxml.jackson.annotation.JsonProperty;

/**
 * 查询部门业绩返回结果。
 * MensualArchievementList 每月业绩，要保证数据是按照月份排序。
 */
public class DepartmentArchievementQueryResult
{
    DepartmentArchievementQueryResult()
    {
        mensualArchievementList = new Vector<Integer>();
        advanceRewardGainers = new Vector<String>();
        leadingRewardGainers = new Vector<String>();
        backwardList = new Vector<String>();
    }

    public int getTotalArchievement()
    {
        return totalArchievement;
    }

    public void setTotalArchievement( int totalArchievement )
    {
        this.totalArchievement = totalArchievement;
    }

    public Vector<Integer> getMensualArchievementList()
    {
        return mensualArchievementList;
    }

    public void setMensualArchievementList( Vector<Integer> mensualArchievementList )
    {
        this.mensualArchievementList = mensualArchievementList;
    }

    public String getInsuranceRenewalRate()
    {
        return insuranceRenewalRate;
    }

    public void setInsuranceRenewalRate( String insuranceRenewalRate )
    {
        this.insuranceRenewalRate = insuranceRenewalRate;
    }

    public String getAttachingRate()
    {
        return attachingRate;
    }

    public void setAttachingRate( String attachingRate )
    {
        this.attachingRate = attachingRate;
    }

    public void addLeadingRewardGainer( String name )
    {
        this.leadingRewardGainers.add( name );
    }

    public Vector<String> getLeadingRewardGainers()
    {
        return leadingRewardGainers;
    }

    public void setLeadingRewardGainers( Vector<String> leadingRewardGainers )
    {
        this.leadingRewardGainers = leadingRewardGainers;
    }

    public void addAdvanceRewardGainer( String name )
    {
        advanceRewardGainers.add( name );
    }

    public Vector<String> getAdvanceRewardGainers()
    {
        return advanceRewardGainers;
    }

    public void setAdvanceRewardGainers( Vector<String> advanceRewardGainers )
    {
        this.advanceRewardGainers = advanceRewardGainers;
    }

    public void addBackwardStaff( String name )
    {
        backwardList.add( name );
    }

    public Vector<String> getBackwardList()
    {
        return backwardList;
    }

    public void setBackwardList( Vector<String> backwardList )
    {
        this.backwardList = backwardList;
    }

    public boolean isSuccess()
    {
        return success;
    }

    public void setSuccess( boolean success )
    {
        this.success = success;
    }

    public String getMessage()
    {
        return message;
    }

    public void setMessage( String message )
    {
        this.message = message;
    }

    @JsonProperty( "success" )
    private boolean success;

    @JsonProperty( "message" )
    private String message;

    @JsonProperty( "total_archievement" )
    private int totalArchievement; // 总业绩

    // 每月业绩列表
    // 要保证数据是按照月份排序。
    @JsonProperty( "mensual_archievement_list" )
    private Vector<Integer> mensualArchievementList;

    @JsonProperty( "insurance_renewal_rate" )
    private String insuranceRenewalRate; // 续保率

    @JsonProperty( "attaching_rate" )
    private String attachingRate; // 车非渗透率

    @JsonProperty( "leading_reward_gainers" )
    private Vector<String> leadingRewardGainers; // 领跑奖

    @JsonProperty( "advance_reward_gainers" )
    private Vector<String> advanceRewardGainers; // 飞跃奖

    @JsonProperty( "backward_list" )
    private Vector<String> backwardList; // 消七灭六坐席


}
