public List <SysChemicalItem> GetChemicalItemWithStock(byte _RequisitionFrom, byte _RequisitionTo) { var FinalStock = DalChemicalStock.ItemWiseStockInSpecificChemicalStore(_RequisitionTo); var FinalStockProductionFloor = DalChemicalStock.ItemWiseStockInSpecificProductionFloor(_RequisitionFrom); var Data = (from c in _context.Sys_ChemicalItem.AsEnumerable() where c.IsActive == true join fs in FinalStock on c.ItemID equals fs.ItemID into FinalStocks from fs in FinalStocks.DefaultIfEmpty() join ps in FinalStockProductionFloor on c.ItemID equals ps.ItemID into ProductionStock from ps in ProductionStock.DefaultIfEmpty() join it in _context.Sys_ItemType on c.ItemTypeID equals it.ItemTypeID into Items from it2 in Items.DefaultIfEmpty() orderby c.ItemName select new SysChemicalItem { ItemID = c.ItemID, ItemName = c.ItemName, ItemCategory = DalCommon.ReturnChemicalItemCategory(c.ItemCategory), ItemTypeID = c.ItemTypeID, ItemTypeName = (it2 == null ? null : it2.ItemTypeName), StockQty = (fs == null ? 0 : fs.ClosingQty), SafetyStock = ps == null ? 0 : Convert.ToInt32(ps.ClosingQty) //Actually Production Stock }).ToList(); return(Data); }
public List <SysChemicalItem> GetAvailableChemicalInStock(byte _RequisitionAt) { var FinalStock = DalChemicalStock.ItemWiseStockInSpecificChemicalStore(_RequisitionAt); var data = (from s in FinalStock where s.ClosingQty > 0 join c in _context.Sys_ChemicalItem on s.ItemID equals c.ItemID into Chemicals from c in Chemicals.DefaultIfEmpty() join i in _context.Sys_ItemType on(c.ItemTypeID == null? null: c.ItemTypeID) equals i.ItemTypeID into ItemTypes from i in ItemTypes.DefaultIfEmpty() select new SysChemicalItem { ItemID = Convert.ToInt32(s.ItemID), ItemName = c == null ? null : c.ItemName, //ItemCategory = DalCommon.ReturnChemicalItemCategory(c.ItemCategory), //ItemTypeName = DalCommon.GetItemTypeName(Convert.ToByte(c.ItemTypeID)), ItemCategory = c.ItemCategory, ItemTypeName = (i == null? null: i.ItemTypeName), StockQty = s.ClosingQty }).ToList(); foreach (var item in data) { item.ItemCategory = DalCommon.ReturnChemicalItemCategory(item.ItemCategory); } return(data); }