public List <AccaInfo> GetCreditCardDetailsForScheduledEvents(DateTime eventDate) { IAccaProcess dao = (IAccaProcess)DALFactory.DAO.Create(DALFactory.Module.AccaProcess); List <AccaInfo> allAccaInfo = dao.GetCreditCardDetailsForScheduledEvents(eventDate); foreach (AccaInfo accaInfo in allAccaInfo) { OrderInfo orderInfo = new OrderInfo(); orderInfo.Amount = CalculateAmount(accaInfo); orderInfo.Type = OrderType.Event; accaInfo.AccaOrderInfo = orderInfo; List <InventoryInfo> inventoryInfo = new Order().GetInventoryList(accaInfo.UserId); bool isInvAvl = false; bool isInvCountNotAvl = false; if (accaInfo.EventStatus != ScheduleEventStatus.ACCAError) { //Check for sufficient quantity foreach (InventoryInfo invInfo in inventoryInfo) { //for brochure, check the availability of the same number of envelopes. if ((invInfo.CategoryType.ToString() == accaInfo.AccaDesignCategory.ToString()) || (accaInfo.AccaDesignCategory != DesignCategory.PowerKard && invInfo.CategoryType == ProductCategory.Envelope)) { isInvAvl = true; if (invInfo.QuantityOnHand < accaInfo.ContactCount) { isInvCountNotAvl = true; break; } } } } if (isInvCountNotAvl || !isInvAvl) { accaInfo.EventStatus = ScheduleEventStatus.ACCAError; if (accaInfo.AccaDesignCategory == DesignCategory.Brochure) { accaInfo.Remarks = "Required quantity of Brochures/Envelopes not available"; } else { accaInfo.Remarks = "Required quantity of PowerKards not available"; } } } return(allAccaInfo); }
public List <AccaInfo> UpdateEventInfo(List <AccaInfo> eventsInfo) { IAccaProcess dao = (IAccaProcess)DALFactory.DAO.Create(DALFactory.Module.AccaProcess); return(dao.UpdateEventInfo(eventsInfo)); }