using DS.Module.Core;
using DS.Module.Core.Data;
using DS.WMS.Core.Fee.Dtos;
using DS.WMS.Core.Flow.Dtos;
using DS.WMS.Core.Info.Dtos;
using DS.WMS.Core.Info.Entity;
namespace DS.WMS.Core.Info.Interface;
///
/// 往来单位
///
public interface IClientInfoService
{
///
/// 提交审核
///
///
///
Task SubmitAuditAsync(IdModel idModel);
///
/// 执行审核
///
///
///
Task AuditAsync(AuditRequest request);
///
/// 撤销审核
///
///
///
Task WithdrawAsync(IdModel idModel);
///
/// 审核完成回调
///
/// 回调信息
///
Task AuditCallbackAsync(FlowCallback callback);
///
/// 导入
///
///
///
Task ImportAsync(List list);
///
/// 列表
///
///
///
Task>> GetListAsync(PageRequest request);
///
/// 确定往来单位是否已使用
///
/// 往来单位ID
///
Task>> GetUsageAsync(params long[] ids);
///
/// 编辑
///
///
///
Task EditAsync(ClientInfoReq model);
///
/// 检查客户信息是否重复
///
///
///
Task IsAvailableAsync(ClientInfoReq req);
///
/// 获取详情
///
///
///
Task> GetAsync(string id);
///
/// 批量删除发票抬头
///
///
///
Task DeleteInvoiceHeaderAsync(IdModel idModel);
///
/// 批量删除
///
///
///
Task DeleteAsync(IdModel req);
///
/// 获取往来单位详情(含有联系人列表)
///
/// 查询往来单位
/// 返回往来单位详情
Task> GetClientInfoWithContact(QueryClientInfo query);
}