package org.qinan.safetyeval.client.api;

import org.qinan.safetyeval.client.co.OrgDepartmentCO;
import org.qinan.safetyeval.client.dto.PageResponse;
import org.qinan.safetyeval.client.dto.SingleResponse;
import org.qinan.safetyeval.client.dto.OrgDepartmentAddCmd;
import org.qinan.safetyeval.client.dto.OrgDepartmentModifyCmd;
import org.qinan.safetyeval.client.dto.OrgDepartmentPageQuery;

/**
 * 部门接口定义（Client层）
 *
 * @author safety-eval
 */
public interface OrgDepartmentApi {

    SingleResponse<OrgDepartmentCO> add(OrgDepartmentAddCmd cmd);

    SingleResponse<OrgDepartmentCO> get(Long id);

    SingleResponse<OrgDepartmentCO> modify(OrgDepartmentModifyCmd cmd);

    SingleResponse<Void> delete(Long id);

    PageResponse<OrgDepartmentCO> page(OrgDepartmentPageQuery query);
}
