private Stock GetStockByFilters(string pStrWarehouse, string pStrItemCode, string pStrBatchNumber) { Stock lObjStock = null; ItemBatchDTO lObjItemBatch = null; lObjItemBatch = SapStockService.GetItemBatchByFilters(pStrWarehouse, pStrItemCode, pStrBatchNumber); if (lObjItemBatch != null) { lObjStock = new Stock() { ItemId = GetItemIdByCode(lObjItemBatch.ItemCode), CustomerId = GetCustomerIdByCode(lObjItemBatch.CardCode), InitialWarehouse = lObjItemBatch.InitialWarehouse, CurrentWarehouse = lObjItemBatch.CurrentWarehouse, ChargeFood = lObjItemBatch.ChargeFood, BatchNumber = lObjItemBatch.BatchNumber, Quantity = lObjItemBatch.Quantity, CreationDate = lObjItemBatch.CreateDate, ModificationDate = lObjItemBatch.UpdateDate > lObjItemBatch.CreateDate? lObjItemBatch.UpdateDate : lObjItemBatch.CreateDate, ExpirationDate = lObjItemBatch.ExpirationDate, Payment = lObjItemBatch.Payment, EntryFolio = lObjItemBatch.Folio }; } return lObjStock; }
private void UpdateStock(string pStrWarehouse, ItemBatchDTO pObjItemBatch) { Stock lObjCurrentStock = null; Stock lObjNewStock = null; try { lObjCurrentStock = LocalStockService.GetListByWhs().FirstOrDefault(x => x.Item.Code == pObjItemBatch.ItemCode && x.BatchNumber == pObjItemBatch.BatchNumber); if (lObjCurrentStock != null) { lObjNewStock = GetStockByFilters(pStrWarehouse, pObjItemBatch.ItemCode, pObjItemBatch.BatchNumber); lObjCurrentStock.Quantity = lObjNewStock.Quantity; lObjCurrentStock.CreationDate = lObjNewStock.CreationDate; lObjCurrentStock.ModificationDate = lObjNewStock.ModificationDate; lObjCurrentStock.ExpirationDate = lObjNewStock.ExpirationDate; lObjCurrentStock.CustomerId = lObjNewStock.CustomerId; LocalStockService.SaveOrUpdate(lObjCurrentStock); } } catch (Exception lObjException) { LogUtility.Write(string.Format("[ERROR] {0}", lObjException.ToString())); } }
private ItemBatchDTO GetItemBatch(Recordset pObjRecordset) { ItemBatchDTO lObjResult = new ItemBatchDTO(); lObjResult.ItemCode = pObjRecordset.Fields.Item("ItemCode").Value.ToString(); lObjResult.CardCode = pObjRecordset.Fields.Item("CardCode").Value.ToString(); lObjResult.BatchNumber = pObjRecordset.Fields.Item("BatchNumber").Value.ToString(); lObjResult.InitialWarehouse = pObjRecordset.Fields.Item("InitialWarehouse").Value.ToString(); lObjResult.CurrentWarehouse = pObjRecordset.Fields.Item("CurrentWarehouse").Value.ToString(); lObjResult.Folio = pObjRecordset.Fields.Item("Folio").Value.ToString(); lObjResult.ChargeFood = pObjRecordset.Fields.Item("ChargeFood").Value.ToString().Equals("Y") || pObjRecordset.Fields.Item("ChargeFood").Value.ToString().Equals("S"); lObjResult.Payment = pObjRecordset.Fields.Item("Payment").Value.ToString().Equals("Y") || pObjRecordset.Fields.Item("Payment").Value.ToString().Equals("S"); lObjResult.Quantity = Convert.ToInt32(pObjRecordset.Fields.Item("Quantity").Value.ToString()); lObjResult.ExpirationDate = pObjRecordset.Fields.Item("ExpDate") != null? Convert.ToDateTime(pObjRecordset.Fields.Item("ExpDate").Value.ToString()) : DateTime.MinValue; lObjResult.CreateDate = pObjRecordset.Fields.Item("InDate") != null? Convert.ToDateTime(pObjRecordset.Fields.Item("InDate").Value.ToString()) : DateTime.MinValue; lObjResult.UpdateDate = pObjRecordset.Fields.Item("UpdatedDate") != null? Convert.ToDateTime(pObjRecordset.Fields.Item("UpdatedDate").Value.ToString()) : DateTime.MinValue; return(lObjResult); }
public ItemBatchDTO GetItemBacthByFilters(string pStrWhsCode, string pStrItemCode, string pStrBatchNumber) { Recordset lObjRecordset = null; ItemBatchDTO lObjResult = null; try { lObjRecordset = (Recordset)DIApplication.Company.GetBusinessObject(BoObjectTypes.BoRecordset); Dictionary <string, string> lLstStrParameters = new Dictionary <string, string>(); lLstStrParameters.Add("WhsCode", pStrWhsCode); lLstStrParameters.Add("ItemCode", pStrItemCode); lLstStrParameters.Add("BatchNumber", pStrBatchNumber); string lStrQuery = this.GetSQL("GetItemBatcheByFilters").Inject(lLstStrParameters); lObjRecordset.DoQuery(lStrQuery); if (lObjRecordset.RecordCount > 0) { lObjResult = GetItemBatch(lObjRecordset); } } catch (Exception lObjException) { LogService.WriteError(lObjException.Message); throw new DAOException(lObjException.Message, lObjException); } finally { MemoryUtility.ReleaseComObject(lObjRecordset); } return(lObjResult); }
private bool StockHasChanges(ItemBatchDTO pObjStock) { string lStrLocalStockDate = LocalStockService.GetListByWhs().Where(x => x.Item.Code == pObjStock.ItemCode && x.BatchNumber == pObjStock.BatchNumber).Select(x => x.ModificationDate).FirstOrDefault().ToString("yyyy-MM-dd HH:mm:ss"); string lStrSAPStockDate = pObjStock.UpdateDate.ToString("yyyy-MM-dd HH:mm:ss"); return lStrLocalStockDate != lStrSAPStockDate ? true : false; }
private bool StockHasBeenImported(ItemBatchDTO pObjStock) { return LocalStockService.GetListByWhs().Where(x => x.Item.Code == pObjStock.ItemCode && x.BatchNumber == pObjStock.BatchNumber).Count() > 0 ? true : false; }