package net.lab1024.sa.admin.module.business.wms.base.customer.service;

import java.util.List;
import net.lab1024.sa.admin.module.business.wms.base.customer.domain.form.CustomerAddForm;
import net.lab1024.sa.admin.module.business.wms.base.customer.domain.form.CustomerUpdateForm;
import net.lab1024.sa.base.common.domain.ResponseDTO;

/**
 * 客户管理 Service
 *
 * @author 霍锦
 * @since 2025-03-25 10:42:33
 * copyright 友仓
 */
public interface CustomerService {

    /**
     * 添加
     *
     * @param addForm 添加参数
     * @return ResponseDTO<String>
     */
    ResponseDTO<String> add(CustomerAddForm addForm);

    /**
     * 更新
     *
     * @param updateForm 更新参数
     * @return ResponseDTO<String>
     */
    ResponseDTO<String> update(CustomerUpdateForm updateForm);

    /**
     * 批量删除
     *
     * @param idList id集合
     * @return ResponseDTO<String>
     */
    ResponseDTO<String> batchDelete(List<Long> idList);

    /**
     * 单个删除
     *
     * @param customerId id
     * @return ResponseDTO<String>
     */
    ResponseDTO<String> delete(Long customerId);
}
