package com.bcxin.ars.dao;

import com.bcxin.ars.dto.DataSynchronizationSearchDto;
import com.bcxin.ars.dto.sb.SbSubsidiaryBaseSearchDto;
import com.bcxin.ars.model.SbSubsidiaryBase;

import java.util.List;

public interface SbSubsidiaryBaseDao {
	/**
	 * 查询
	 * @param sbSubsidiaryBaseSearchDto
	 * @return
	 */
	List<SbSubsidiaryBase> search(SbSubsidiaryBaseSearchDto sbSubsidiaryBaseSearchDto);

	/**
	 * 保存
	 * @param sbSubsidiaryBase
	 * @return
	 */
	Long save(SbSubsidiaryBase sbSubsidiaryBase);

	/**
	 * 删除
	 * @param sbSubsidiaryBase
	 * @return
	 */
	Long delete (SbSubsidiaryBase sbSubsidiaryBase);


	/**
	 * 根据ID查询
	 * @param id
	 * @return
	 */
	SbSubsidiaryBase findById(Long id);

	/**
	 * 统计
	 * @return
	 */
	long count(SbSubsidiaryBaseSearchDto dto);

	/**
	 * 更新子公司基础信息
	 * @param sbSubsidiaryBase
	 */
	void update(SbSubsidiaryBase sbSubsidiaryBase);

	List<SbSubsidiaryBase> searchForDataSynchronization(DataSynchronizationSearchDto searchDto);

	void saveForDS(SbSubsidiaryBase sbSubsidiaryBase);


}
