package cn.superdesk.uniorder.service.organisation;


import cn.superdesk.uniorder.common.rest.response.R;
import cn.superdesk.uniorder.dao.entity.organisation.SysClique;
import cn.superdesk.uniorder.dto.param.organisation.SysCliqueFindByTreeCriteria;
import cn.superdesk.uniorder.dto.vo._function.tree.SysCliqueTreeModel;
import cn.superdesk.uniorder.service.base.BaseService;
import com.github.pagehelper.PageInfo;

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


/**
 * @Description: 集团
 * @Author: linjinyu
 * @Email linjinyu@avic-s.com
 * @CreateDate: 2021-04-28 14:08:25
 * @UpdateUser: linjinyu
 * @UpdateDate: 2021-04-28 14:08:25
 * @UpdateRemark: 修改内容
 * @Version: 1.0
 */
public interface SysCliqueService extends BaseService<SysClique> {


    /****************************************** extends BaseService 部分 start ******************************************/

    int insertSelective(SysClique entity);

    int updateByPrimaryKeySelective(SysClique entity);

    @Deprecated
    void deleteObj(Long id);

    @Deprecated
    SysClique findById(Long id);

    @Deprecated
    PageInfo<SysClique> findByPaging(Map<String, Object> conditions, Integer pageNun, Integer pageSize);

    @Deprecated
    List<SysClique> findAll(Map<String, Object> queryMap);

    /****************************************** extends BaseService 部分   end ******************************************/


    void addSysClique(SysClique entity);

    void updateSysClique(SysClique entity);

    void deleteSysClique(Long id);

    SysClique findSysCliqueById(Long id);

    R<List<SysClique>> pageQuery(Map<String, Object> conditions, int pageNun, int pageSize);


    /****************************************** kafka start ******************************************/

    void kafkaMergeReceiveClique(SysClique sysCliqueEntity);

    void kafkaDeleteReceiveClique(SysClique sysCliqueEntity);

    /****************************************** kafka   end ******************************************/


    List<SysCliqueTreeModel> findByTree();

    List<SysCliqueTreeModel> findByTree002(SysCliqueFindByTreeCriteria queryCriteria);

    List<SysCliqueTreeModel> findByTree003(SysCliqueFindByTreeCriteria queryCriteria);

    List<SysCliqueTreeModel> findByTree004(SysCliqueFindByTreeCriteria queryCriteria);


}