package com.usky.sas.service;

import com.usky.common.core.bean.CommonPage;
import com.usky.sas.service.vo.PersonnelDetailResponse;
import com.usky.sas.service.vo.PersonnelListItem;
import com.usky.sas.service.vo.PersonnelPageRequest;

/**
 * 人员管理 服务接口
 */
public interface SasPersonnelService {

    /**
     * 白名单分页查询
     */
    CommonPage<PersonnelListItem> whitelistPage(PersonnelPageRequest request);

    /**
     * 同步白名单
     */
    int syncWhitelist();

    /**
     * 白名单详情
     */
    PersonnelDetailResponse whitelistDetail(String personCode);

    /**
     * 黑名单分页查询
     */
    CommonPage<PersonnelListItem> blacklistPage(PersonnelPageRequest request);

    /**
     * 同步黑名单
     */
    int syncBlacklist();

    /**
     * 黑名单详情
     */
    PersonnelDetailResponse blacklistDetail(String personCode);

    /**
     * 在册人员分页查询
     */
    CommonPage<PersonnelListItem> registeredPage(PersonnelPageRequest request);

    /**
     * 同步在册人员
     */
    int syncRegistered();

    /**
     * 在册人员详情
     */
    PersonnelDetailResponse registeredDetail(String personCode);

    /**
     * 关注人员分页查询
     */
    CommonPage<PersonnelListItem> followPage(PersonnelPageRequest request);

    /**
     * 同步关注人员
     */
    int syncFollow();

    /**
     * 关注人员详情
     */
    PersonnelDetailResponse followDetail(String personCode);
}

