public IList <ChannelsAndAlertsViewModel> GetChannelsAlerts(int daId)
        {
            try
            {
                ChannelsAndAlertsManager channelalertsManager = new ChannelsAndAlertsManager();
                var channelalerts = channelalertsManager.GetAllChannelAndAlerts(daId);

                IList <ChannelsAndAlertsViewModel> channelsalertsList = new List <ChannelsAndAlertsViewModel>();
                foreach (var item in channelalerts)
                {
                    ChannelsAndAlertsViewModel channelsalertsItem = new ChannelsAndAlertsViewModel();
                    channelsalertsItem.ChannelAlertID        = Convert.ToInt32(item.ChannelAlertID);
                    channelsalertsItem.ReqReference          = (item.ReqReference == null ? "" : item.ReqReference);
                    channelsalertsItem.MessageDesc           = (item.MessageDesc == null ? "" : item.MessageDesc);
                    channelsalertsItem.TransactionSeq        = Convert.ToInt32(item.TransactionSeq);
                    channelsalertsItem.SourceID              = Convert.ToInt32(item.SourceID);
                    channelsalertsItem.ModeTypeID            = Convert.ToInt32(item.ModeTypeID);
                    channelsalertsItem.DestID                = Convert.ToInt32(item.DestnID);
                    channelsalertsItem.DistributionTypeID    = Convert.ToInt32(item.DistributionTypeID);
                    channelsalertsItem.FreqID                = Convert.ToInt32(item.FreqID);
                    channelsalertsItem.IsManual              = item.IsManual;
                    channelsalertsItem.ChannelAlertAttrMapID = Convert.ToInt32(item.ChannelAlertAttrMapID);

                    channelsalertsItem.HighLevelTransaction = item.HIGHLEVELTXN;

                    channelsalertsItem.AttrID1  = Convert.ToInt32(item.AttrID1);
                    channelsalertsItem.AttrID2  = Convert.ToInt32(item.AttrID2);
                    channelsalertsItem.AttrID3  = Convert.ToInt32(item.AttrID3);
                    channelsalertsItem.AttrID4  = Convert.ToInt32(item.AttrID4);
                    channelsalertsItem.AttrID5  = Convert.ToInt32(item.AttrID5);
                    channelsalertsItem.AttrID6  = Convert.ToInt32(item.AttrID6);
                    channelsalertsItem.AttrID7  = Convert.ToInt32(item.AttrID7);
                    channelsalertsItem.AttrID8  = Convert.ToInt32(item.AttrID8);
                    channelsalertsItem.AttrID9  = Convert.ToInt32(item.AttrID9);
                    channelsalertsItem.AttrID10 = Convert.ToInt32(item.AttrID10);

                    channelsalertsItem.AttrValueID1  = Convert.ToInt32(item.AttrValueID1);
                    channelsalertsItem.AttrValueID2  = Convert.ToInt32(item.AttrValueID2);
                    channelsalertsItem.AttrValueID3  = Convert.ToInt32(item.AttrValueID3);
                    channelsalertsItem.AttrValueID4  = Convert.ToInt32(item.AttrValueID4);
                    channelsalertsItem.AttrValueID5  = Convert.ToInt32(item.AttrValueID5);
                    channelsalertsItem.AttrValueID6  = Convert.ToInt32(item.AttrValueID6);
                    channelsalertsItem.AttrValueID7  = Convert.ToInt32(item.AttrValueID7);
                    channelsalertsItem.AttrValueID8  = Convert.ToInt32(item.AttrValueID8);
                    channelsalertsItem.AttrValueID9  = Convert.ToInt32(item.AttrValueID9);
                    channelsalertsItem.AttrValueID10 = Convert.ToInt32(item.AttrValueID10);

                    channelsalertsList.Add(channelsalertsItem);
                }

                return(channelsalertsList);
            }
            catch (Exception)
            {
                throw;
            }
        }
 public void DeleteChannelAttrMapId(int postData)
 {
     try
     {
         ChannelsAndAlertsManager channelAlertManager = new ChannelsAndAlertsManager();
         channelAlertManager.DeleteChannelAttrMapId(postData);
     }
     catch (Exception)
     {
         throw;
     }
 }
        public void GetFrequency(int?daId)
        {
            try
            {
                IList <tbl_FrequencyType> lstFrequencyTypes       = new List <tbl_FrequencyType>();
                ChannelsAndAlertsManager  channelandalertsManager = new ChannelsAndAlertsManager();

                lstFrequencyTypes = channelandalertsManager.GetAllFrequencyTypes(daId);
                lstFrequency      = lstFrequencyTypes;
            }
            catch (Exception)
            {
                throw;
            }
        }
        public void GetDistribution(int?daId)
        {
            try
            {
                IList <tbl_DistributionType> lstDistributions        = new List <tbl_DistributionType>();
                ChannelsAndAlertsManager     channelandalertsManager = new ChannelsAndAlertsManager();

                lstDistributions = channelandalertsManager.GetAllDistributionTypes(daId);
                lstDistribution  = lstDistributions;
            }
            catch (Exception)
            {
                throw;
            }
        }
        public int SaveChannelAlertsData(IList <ChannelsAndAlertsViewModel> channelalerts, int daId)
        {
            try
            {
                int result = 0;
                ChannelsAndAlertsManager           channelalertsManager        = new ChannelsAndAlertsManager();
                List <tbl_ChannelAlert>            lstChannelAlerts            = new List <tbl_ChannelAlert>();
                List <tbl_ChannelAlertAttrMapping> lstChannelAlertsAttrMapping = new List <tbl_ChannelAlertAttrMapping>();

                var AllChannelAlerts = channelalerts.GroupBy(b => b.ChannelAlertAttrMapID);

                foreach (var chn in AllChannelAlerts)
                {
                    tbl_ChannelAlertAttrMapping tblchannelalertsattrmapping = new tbl_ChannelAlertAttrMapping();

                    if ((chn.Key.ToString().Length > 5) && (chn.Key.ToString().Substring(chn.Key.ToString().Length - 2, 2) == "00"))
                    {
                        #region Add New Channel and Alert

                        int cnt = 1;
                        var cur = channelalerts.Where(e => e.ChannelAlertAttrMapID == chn.Key && e.IsLinked.Equals(true)); //Querying checked highlevel transactions and BuzruleAttrMapID marked new
                        foreach (var HighTrans in cur)
                        {
                            if (cnt == 1)
                            {
                                AttributesMapping(ref tblchannelalertsattrmapping, HighTrans);
                                tblchannelalertsattrmapping.EntityState = DA.DomainModel.EntityState.Added;
                            }
                            cnt++;

                            tbl_ChannelAlert channelalert = new tbl_ChannelAlert();
                            channelalert.daId           = daId;
                            channelalert.TransactionSeq = HighTrans.TransactionSeq;

                            channelalert.tbl_ChannelAlertAttrMapping = tblchannelalertsattrmapping;
                            channelalert.EntityState = DA.DomainModel.EntityState.Added;
                            tblchannelalertsattrmapping.tbl_ChannelAlert.Add(channelalert);
                        }
                        lstChannelAlertsAttrMapping.Add(tblchannelalertsattrmapping);

                        #endregion
                    }
                    else
                    {
                        #region AddModifyDelete Business Rules

                        int cnt1 = 1;
                        var cur  = channelalerts.Where(e => e.ChannelAlertAttrMapID == chn.Key && (e.IsLinked.Equals(true) || e.ChannelAlertID != 0)); //Querying checked highlevel transactions and BuzruleID existed
                        foreach (var HighTrans in cur)
                        {
                            if (cnt1 == 1)
                            {
                                tblchannelalertsattrmapping.ChannelAlertAttrMapID = HighTrans.ChannelAlertAttrMapID;
                                AttributesMapping(ref tblchannelalertsattrmapping, HighTrans);
                                tblchannelalertsattrmapping.EntityState = DA.DomainModel.EntityState.Modified;
                            }
                            cnt1++;
                            tbl_ChannelAlert channelalert = new tbl_ChannelAlert();
                            channelalert.daId                  = daId;
                            channelalert.TransactionSeq        = HighTrans.TransactionSeq;
                            channelalert.ChannelAlertAttrMapID = HighTrans.ChannelAlertAttrMapID;
                            channelalert.ChannelAlertID        = HighTrans.ChannelAlertID;

                            if ((HighTrans.ChannelAlertID != 0) && (HighTrans.IsLinked == true))
                            {
                                channelalert.EntityState = DA.DomainModel.EntityState.Unchanged;
                            }
                            else if ((HighTrans.ChannelAlertID == 0) && (HighTrans.IsLinked == true))
                            {
                                channelalert.EntityState = DA.DomainModel.EntityState.Added;
                            }
                            else if ((HighTrans.ChannelAlertID != 0) && (HighTrans.IsLinked == false))
                            {
                                channelalert.EntityState = DA.DomainModel.EntityState.Deleted;
                            }

                            tblchannelalertsattrmapping.tbl_ChannelAlert.Add(channelalert);
                        }
                        lstChannelAlertsAttrMapping.Add(tblchannelalertsattrmapping);

                        #endregion
                    }
                }

                result = channelalertsManager.SaveChannelAlertDataMapping(lstChannelAlertsAttrMapping);
                return(result);
            }
            catch (Exception)
            {
                throw;
            }
        }