package cn.com.countrygarden.bi.main.service.performance.common;

import cn.com.countrygarden.bi.main.model.performance.PerformanceArea;

import java.util.List;

/**
 * 绩效Area业务接口
 *
 * @Author:Wyman
 * @Date:2018/10/22
 */
public interface PerformanceAreaService {

    /**
     * 根据area类型来获取所有有效的area
     * @param typeNo
     * @return
     */
    List<PerformanceArea> getAllAreasByType(String typeNo);

    /**
     * 根据area类型获取对应的总记录数
     * @param typeNo
     * @return
     */
    int getTotalByType(String typeNo);

    /**
     * 过滤有效的区域或城市地区
     * @param areaList
     * @param typeNo
     * @return
     */
    List<String> getFilterList(List<String> areaList, String typeNo);

    /**
     * 根据地区id获取子类型(暂适用于城市公司类型)
     * @param hierachyId
     * @return
     */
    String getSubTypeByHierachyId(String hierachyId);

    /**
     * 新增一个地区
     * @param area
     */
    void addPerformanceArea(PerformanceArea area);

    /**
     * 更新一个地区信息
     * @param area
     */
    void updatePerformanceArea(PerformanceArea area);

    /**
     * 区域--我的月度考核
     * @param hierarchyIdList
     * @param year
     * @param userCode
     * @return
     */
    Object selectMonthlyEnvScoreInfo(String[] hierarchyIdList, int year, String userCode);

    /**
     * 城市公司--我的月度考核
     * @param hierarchyIdList
     * @param year
     * @param userCode
     * @return
     */
    Object selectMonthlyCompanyScoreInfo(String[] hierarchyIdList, Integer year, String userCode);

}
