package com.softwarebr.nunu.service.ser;

import com.brframework.commondb.core.EntityService;
import com.softwarebr.nunu.dto.ser.PlatformParamDTO;
import com.softwarebr.nunu.entity.ser.Platform;

import java.util.List;

/**
 * @author lilin
 * @date 2020-02-24 13:22:47
 */

public interface PlatformService extends EntityService<Platform, Long, Object> {

    /**
     * 查询平台认证信息
     *
     * @param memberId
     * @return
     */
    Platform getPlatformResult(Long memberId);

    /**
     * 查询已上架服务平台
     *
     * @return
     */
    List<Platform> getPlatformUpper();


    /**
     * 服务平台审核
     *
     * @param id
     * @param verify       审核结果
     * @param verifyRemark 审核备注
     */
    void platformVerify(Long id, Integer verify, String verifyRemark);

    /**
     * 服务平台保存
     *
     * @param publisher        发布者 -1为平台
     * @param platformParamDTO 参数数据
     * @return
     */
    Platform savePlatform(Long publisher, PlatformParamDTO platformParamDTO);

    /**
     * 服务平台修改
     *
     * @param platformId       服务平台id
     * @param platformParamDTO 参数数据
     */
    void updatePlatform(Long platformId, PlatformParamDTO platformParamDTO);

    /**
     * 项服务平台上架
     *
     * @param platformId 服务平台id
     */
    void platformUpperShelf(Long platformId);

    /**
     * 服务平台下架
     *
     * @param platformId 服务平台id
     */
    void platformLowerShelf(Long platformId);

    /**
     * 服务平台项目推荐至首页
     *
     * @param platformId 服务平台id
     */
    void platformIndexYes(Long platformId);

    /**
     * 服务平台取消推荐至首页
     *
     * @param platformId 服务平台id
     */
    void platformIndexNo(Long platformId);
}