package com.lightinit.hsdataplatform.service.admin;

import com.lightinit.hsdataplatform.entity.*;
import com.lightinit.hsdataplatform.model.ResultState;
import com.lightinit.hsdataplatform.model.admin.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * Created by WangYao on 2018/5/23.
 */
public interface IResourceAPIRegisterService {
    List<ResourceAPIRegisterListModel> queryList(ResourceAPIRegisterSearchModel inputModel);

    long queryCount(ResourceAPIRegisterSearchModel inputModel);

    ResultState<Long> apiInterface_add_finally(ResourceAPIRegisterAddResourceModel addResourceModel,Long userId,String userName);

    ResultState<Long> delete(long id);

    Resource queryOneResource(long id);

    ResourceApi queryOneResourceAPI(long id);

    int isAdminFalg(@Param("userId") Long userId);

    List<ResourceApiInterfaceWithBLOBs> queryOneResourceAPIInterface(long id);

    ResultState<Long> apiInterface_edit(ResourceAPIRegisterEditResourceModel editResourceModel,Long userId);

    ResourceAPIRegisterViewResourceModel queryOneViewResource(long id);

    ResourceApiInterfaceWithBLOBs queryOneViewResourceAPI(long id);

    List<ResourceApiInterfaceInput> queryOneViewResourceAPIInterfaceInput(long id);

    List<ResourceApiInterfaceOutput> queryOneViewResourceAPIInterfaceOutput(long id);

    ResultState<Long> audit(ResourceAPIRegisterAuditModel resourceAPIRegisterAuditModel);

    List<APIServiceTypeModel> getApiServiceTypes(String fuwutype);
}
