package org.qinan.safetyeval.client.api;

import org.qinan.safetyeval.client.co.OrgQualificationCO;
import org.qinan.safetyeval.client.dto.PageResponse;
import org.qinan.safetyeval.client.dto.SingleResponse;
import org.qinan.safetyeval.client.dto.OrgQualificationAddCmd;
import org.qinan.safetyeval.client.dto.OrgQualificationModifyCmd;
import org.qinan.safetyeval.client.dto.OrgQualificationPageQuery;

import java.util.List;
import java.util.Map;

/**
 * 机构资质证书接口定义（Client层）
 *
 * @author safety-eval
 */
public interface OrgQualificationApi {

    SingleResponse<OrgQualificationCO> add(OrgQualificationAddCmd cmd);

    SingleResponse<OrgQualificationCO> get(Long id);

    SingleResponse<OrgQualificationCO> modify(OrgQualificationModifyCmd cmd);

    SingleResponse<Void> delete(Long id);

    PageResponse<OrgQualificationCO> page(OrgQualificationPageQuery query);

    SingleResponse<Map<String, List<OrgQualificationCO>>> classGet(Long id);
}
