track/src/SJZY.Track.Domain/Aggregates/OrderAggregate/IOrderRepository.cs
2024-03-14 11:49:24 +08:00

68 lines
1.8 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using SJZY.Track.Domain.Dtos.Order;
namespace SJZY.Track.Domain.Aggregates.OrderAggregate;
public interface IOrderRepository : IBasicRepository<OrderEntity>
{
/// <summary>
/// 创建订单
/// </summary>
/// <param name="order"></param>
/// <returns></returns>
Task CreateOrderAsync(OrderEntity order);
/// <summary>
/// 更新订单
/// </summary>
/// <param name="order"></param>
/// <returns></returns>
Task UpdateOrderAsync(OrderEntity order);
/// <summary>
/// 删除订单
/// </summary>
/// <param name="orderId"></param>
/// <returns></returns>
Task DeleteOrderAsync(int orderId);
#region 订单关联
/// <summary>
/// 根据订单id,获取关联的订单集合
/// </summary>
/// <param name="orderId"></param>
/// <returns></returns>
Task<List<LinkedOrderVO>> GetLinkedOrdersAsync(int orderId);
/// <summary>
/// 关联订单
/// </summary>
/// <param name="orderLinkEntities"></param>
/// <returns></returns>
Task LinkOrderAsync(List<OrderLinkEntity> orderLinkEntities);
/// <summary>
/// 解除订单关联关系
/// </summary>
/// <param name="linkIds"></param>
/// <returns></returns>
Task UnLinkByIdsAsync(List<int> linkIds);
#endregion
/// <summary>
/// 根据订单模板找对应服务商
/// </summary>
/// <param name="orderNos"></param>
/// <returns></returns>
Task<List<OrderServiceProviderVO>> FindServiceProviderByOrderAsync(List<string> orderNos);
/// <summary>
/// 获取服务商下所有单(未完成的)
/// </summary>
/// <param name="serviceProvider"></param>
/// <returns></returns>
Task<List<OrderServiceProviderVO>> FindOrderByServiceProviderAsync(int serviceProvider);
}