namespace WIDESEA_StorageBasicRepository; public class Dt_BillGroupStockRepository : RepositoryBase, IDt_BillGroupStockRepository { public Dt_BillGroupStockRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage) { } /// /// 获取出库库存 /// /// public List GetOutboundStockList(string materialCode) { var stocks = Db.Queryable() .Includes(x => x.LocationInfo) .Where(x => !x.LocationInfo.IsLocked && x.LocationInfo.Status == LocationEnum.InStock.ObjToInt()) .Includes(x => x.Dt_BillGroupStockDetailList) .Where(x => x.State == (int)StockStateEmun.已入库) .Where(x => x.Dt_BillGroupStockDetailList.Select(t => t.MaterialNo).Contains(materialCode)).ToList(); return stocks; } public async Task GetStocksAsync(string palletCode = null, string locationID = null, string materialNo = null) { return await Db.Queryable() .WhereIF(palletCode != null, x => x.PalletCode == palletCode) .WhereIF(locationID != null, x => x.LocationCode == locationID) .WhereIF(materialNo != null, x => x.MaterialNo == materialNo) .Includes(x => x.LocationInfo) .Includes(x => x.Dt_BillGroupStockDetailList) .FirstAsync(); } public bool UpdateNavStock(List stocks) { return Db.UpdateNav(stocks) .Include(x => x.LocationInfo) .Include(x => x.Dt_BillGroupStockDetailList) .ExecuteCommand(); } public bool UpdateNavStock(Dt_BillGroupStock stock) { return Db.UpdateNav(stock) .Include(x => x.LocationInfo) .Include(x => x.Dt_BillGroupStockDetailList) .ExecuteCommand(); } }