using GB5Shared.DTO.Framework.Login;
namespace MMBLL.StockCostApport;
public interface IStockCostApportBLL
{
///
/// Apportions a post-GRN charge (freight, duty, handling) to the stock positions
/// of all items on the referenced GRN document, proportionally by item value.
/// Updates TSTOCKPOSITION.AverageValue and recomputes AverageCost prospectively.
/// Historical TSTOCKLEDGER records are NOT retroactively changed.
///
Task ApportionChargeAsync(
int grnObjectTypeId, int grnObjectId,
decimal totalChargeAmount, int chargeAccountId,
LoginDTO login, CancellationToken ct);
}