protected void SetStockCard(EventItem item, Period period) { StockCard sc = StockCardRepository.FindStockCardHeader(m_command, item.PART.ID, item.WAREHOUSE.ID, period, item.EVENT.TRANSACTION_DATE); item.WAREHOUSE = StockCardRepository.FindWarehouse(m_command, item.WAREHOUSE.ID); item.PART.UNIT = StockCardRepository.FindUnit(m_command, item.PART.UNIT.ID); if (sc == null) { sc = StockCard.CreateStockCard(item, period); } item.STOCK_CARD = sc; item.STOCK_CARD.PART = item.PART; }
public IList GetStockCardInfoList(int partID) { OpenConnection(); MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand(); cmd.Connection = m_connection; Period p = PeriodRepository.FindCurrentPeriod(cmd); cmd.CommandText = StockCard.FindByPartPeriod(partID, p.ID); MySql.Data.MySqlClient.MySqlDataReader r = cmd.ExecuteReader(); IList stockcards = StockCard.TransforReaderList(r); r.Close(); IList stockInfoList = new ArrayList(); foreach (StockCard sc in stockcards) { StockCardInfo sci = new StockCardInfo(sc.BALANCE, sc.BOOKED, sc.BACK_ORDER, sc.WAREHOUSE); sci.WAREHOUSE = StockCardRepository.FindWarehouse(cmd, sc.WAREHOUSE.ID); stockInfoList.Add(sci); } return(stockInfoList); }
public static StockCard FindStockCardHeader(MySql.Data.MySqlClient.MySqlCommand cmd, long partId, long locationId, Period periodId, DateTime trDate) { cmd.CommandText = String.Format("select * from table_stockcard where part_id = {0} and warehouse_id = {1} and period_id = {2}", partId, locationId, periodId.ID); MySql.Data.MySqlClient.MySqlDataReader r = cmd.ExecuteReader(); StockCard sc = StockCard.TransformReader(r); r.Close(); if (sc != null) { sc.PERIOD = PeriodRepository.FindPeriod(cmd, sc.PERIOD.ID); sc.WAREHOUSE = StockCardRepository.FindWarehouse(cmd, sc.WAREHOUSE.ID); cmd.CommandText = StockCardEntry.FindByStockCard(sc.ID, periodId.START_DATE, trDate); MySql.Data.MySqlClient.MySqlDataReader rx = cmd.ExecuteReader(); sc.STOCK_CARD_ENTRIES = StockCardEntry.TransformReaderList(rx); rx.Close(); foreach (StockCardEntry e in sc.STOCK_CARD_ENTRIES) { if (e.STOCK_CARD_ENTRY_TYPE == StockCardEntryType.SupplierInvoice) { cmd.CommandText = SupplierInvoiceItem.GetByIDSQL(e.EVENT_ITEM.ID); rx = cmd.ExecuteReader(); e.EVENT_ITEM = SupplierInvoiceItem.TransformReader(rx); rx.Close(); } if (e.STOCK_CARD_ENTRY_TYPE == StockCardEntryType.CustomerInvoice) { cmd.CommandText = CustomerInvoiceItem.GetByIDSQL(e.EVENT_ITEM.ID); rx = cmd.ExecuteReader(); e.EVENT_ITEM = CustomerInvoiceItem.TransformReader(rx); rx.Close(); } } } return(sc); }