package com.fs.qw.service;

import com.fs.company.domain.CompanyUser;
import com.fs.hisStore.param.FsCompanyCustomerOrderParam;
import com.fs.hisStore.vo.FsStoreOrderVO;
import com.fs.qw.domain.FsCompanyCustomer;
import com.fs.qw.domain.FsCompanyExternalPayReceipt;
import com.fs.qw.param.TransferCustomerParam;

import java.util.List;

/**
 * 客户基础信息Service接口
 *
 * @author yourname
 * @date 2026-04-30
 */
public interface IFsCompanyCustomerService {
    FsCompanyCustomer selectFsCompanyCustomerById(Long id);

    List<FsCompanyCustomer> selectFsCompanyCustomerList(FsCompanyCustomer fsCompanyCustomer);

    int insertFsCompanyCustomer(FsCompanyCustomer fsCompanyCustomer,CompanyUser companyUser);

    int updateFsCompanyCustomer(FsCompanyCustomer fsCompanyCustomer);

    int deleteFsCompanyCustomerByIds(Long[] ids);

    //根据销售id查询销售管理的的客户信息列表
    List<FsCompanyCustomer> selectFsCompanyCustomerListByCompanyUserIds(FsCompanyCustomer fsCompanyCustomer);

    //执行转交销售客户信息
    int transferCustomer(TransferCustomerParam transferCustomerParam);

    //执行认领销售客户信息
    int claimCustomer(FsCompanyCustomer fsCompanyCustomer,CompanyUser companyUser);

    //查询客户订单列表
    List<FsStoreOrderVO> selectStoreOrderScrmByCompanyCustomerParam(FsCompanyCustomerOrderParam param);

    String getKdnAddress(String address);

    //增加客户购买次数
    int addBuyTimes(Long id);
}