package com.zcloud.primeport.api;

import com.alibaba.cola.dto.MultiResponse;
import com.zcloud.primeport.dto.*;
import com.zcloud.primeport.dto.clientobject.ClosedAreaPersonApplyCO;

import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.SingleResponse;
import com.zcloud.primeport.dto.clientobject.ClosedAreaPersonApplyDeptCO;
import com.zcloud.primeport.dto.clientobject.UserCo;

/**
* web-client
* @Author dearLin
* @Date 2026-03-19 13:59:16
*/
public interface ClosedAreaPersonApplyServiceI {
    ClosedAreaPersonApplyCO  queryById(Long id);
    
    PageResponse<ClosedAreaPersonApplyCO> listPage(ClosedAreaPersonApplyPageQry qry);

    MultiResponse <ClosedAreaPersonApplyDeptCO> deptList();

    SingleResponse<ClosedAreaPersonApplyCO> add(ClosedAreaPersonApplyAddCmd cmd);

    void edit(ClosedAreaPersonApplyUpdateCmd cmd);

    void remove(Long id);

    void removeBatch(Long[] ids);

    PageResponse<UserCo> getCorpUserList(ClosedAreaPersonApplyPageQry qry);

    void auditPersonApply(ClosedAreaPersonApplyAuditCmd auditCmd);

    void authPerson(ClosedAreaPersonApplyAuthCmd cmd);

    Long saveTmpPersonApply(ClosedTmpApplyAddCmd cmd);

    SingleResponse<ClosedAreaPersonApplyCO> getAuthorizationPersonInfo(Long id);
}

