package com.brilliance.isc.mda.dao;

import com.brilliance.isc.bo.Atpbch;
import com.brilliance.isc.vo.manager.AtpbchVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

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

@Mapper
public interface AtpbchMapper {

    Atpbch selectByBranchAndInifrm(@Param("branch") String branch, @Param("inifrm") String inifrm);

    Atpbch selecDistinctByInifrm(@Param("inifrm") String inifrm);

    Atpbch selectByFrmtypAndBranchAndFlg(@Param("frmtyp") String frmtyp, @Param("branch") String branch, @Param("flg") String flg);
    int insert(Atpbch record);

    int insertSelective(Atpbch record);

    int updateByPrimaryKeySelective(Atpbch record);

    int updateByPrimaryKey(Atpbch record);

    int deleteByPrimaryKey(Atpbch record);

    int deleteByIds(Collection<Object> collection);

    Atpbch selectByPrimaryKey(Atpbch record);

    int dyncDelete(Map<String, Object> dyncMap);

    List<Atpbch> dyncRead(Map<String, Object> dyncMap);

    Atpbch atpbchSelectOne(@Param("frmtyp") String frmtyp, @Param("branch") String branch);

    List<Atpbch> listFuzzyByRecord(AtpbchVo record);

    // 根据 branch、 frmtyp、 inifrm 字段判重
    Atpbch selectByRecord(Atpbch record);

    Atpbch selectByBo(Atpbch record);
    List<Atpbch> selectAtpbchByBranchAndNegflg(@Param("branch") String branch,@Param("negflg") String negflg);

    Atpbch selectAtpbchByFrmtypAndBranchAndFlg(@Param("frmtyp") String frmtyp,@Param("branch") String branch,@Param("flg") String flg);

    List<Atpbch> selectOrderFrm();
}