package com.sunxung.factoring.mapper.customerinformation;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sunxung.factoring.entity.customerinformation.Customer;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author liutao
 */
@Mapper
public interface CustomerMapper extends BaseMapper<Customer> {
    /**
     * 新增企业
     * @param customer
     */
    void add(Customer customer);

    /**
     * 获取业务经理创建的所有业务下关联的供应商
     * @param userId
     * @return
     */
    List<Customer> getLocalUserSuppliers(Long userId);

    /**
     * 经理创建的业务中关联的某一个供应商的业务中的核心企业名称
     * @param userId
     * @param supplierId
     * @return
     */
    List<Customer> getLocalUserCustomers(@Param("userId")Long userId, @Param("supplierId")Long supplierId);

    /**
     * 供应商相关的业务中关联的核心企业名称
     * @param supplierId
     * @return
     */
    List<Customer> getLocalSupplierCustomers(Long supplierId);

    /**
     * 经理创建的业务中的核心企业名称
     * @param managerId
     * @return
     */
    List<Customer> getCustomersByUser(Long managerId);

    /**
     * 经理创建的业务中的供应商
     * @param businessNumber
     * @return
     */
    List<Customer> getSuppliersByUser(@Param("businessNumber") String businessNumber);
}
