package com.malk.qiwang.mapper;

import com.malk.qiwang.entity.CompanyTitle;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

/**
 * <p>
 * 公司抬头库表 Mapper 接口
 * </p>
 *
 * @author LQY
 * @since 2026-04-24
 */
public interface CompanyTitleMapper extends BaseMapper<CompanyTitle> {
    /**
     * 根据税号删除
     *
     * @param taxId 税号
     * @return 删除条数
     */
    @Delete("DELETE FROM company_title WHERE tax_id = #{taxId}")
    int deleteByTaxId(@Param("taxId") String taxId);

    /**
     * 根据税号查询
     *
     * @param taxId 税号
     * @return 公司抬头信息
     */
//    @Select("SELECT * FROM company_title WHERE tax_id = #{taxId}")
    @Select("SELECT * FROM company_title WHERE company_name = #{companyName}")
    CompanyTitle selectByTaxId(@Param("companyName") String companyName);

    @Select("SELECT * FROM company_title WHERE tax_id = #{taxId}")
    CompanyTitle selectByTaxId1(String taxId);
    /**
     * 软删除（根据税号更新删除标记）
     *
     * @param taxId 税号
     * @return 更新条数
     */
    @Update("UPDATE company_title SET deleted_at = NOW() WHERE tax_id = #{taxId}")
    int softDeleteByTaxId(@Param("taxId") String taxId);

    @Delete("DELETE FROM company_title WHERE status = 1")
    void delZT();
}
