示例#1
0
        public static void ExpireCoupon()
        {
            List <CouponDTO> CouponDTOList = new List <CouponDTO>();

            CouponDTOList = CouponService.GetCouponListWhichNotExpired();
            if (CouponDTOList != null)
            {
                foreach (var item in CouponDTOList)
                {
                    EcouponCampaignDTO EcouponCampaignDTO = new EcouponCampaignDTO();
                    EcouponCampaignDTO = EcouponCampaignService.GetById(item.EcouponCampaignId);
                    if (EcouponCampaignDTO.ExpiresOn != null)
                    {
                        if (EcouponCampaignDTO.ExpiresOn < System.DateTime.Now)
                        {
                            CouponDTO CouponDTO = new CouponDTO();
                            CouponDTO = item;// CouponService.GetById(item.Id);

                            CouponDTO.IsExpired = true;
                            CouponService.Edit(CouponDTO);
                        }
                    }
                }
            }
        }
示例#2
0
        public static EcouponCampaignDTO EcouponCampaignToDTO(EcouponCampaign EcouponCampaign)
        {
            if (EcouponCampaign == null)
            {
                return(null);
            }
            Mapper.CreateMap <EcouponCampaign, EcouponCampaignDTO>();
            EcouponCampaignDTO EcouponCampaignDTO = Mapper.Map <EcouponCampaignDTO>(EcouponCampaign);

            return(EcouponCampaignDTO);
        }
        //Get redeemed count list by user id and campaign id
        public static List <RedeemedCountDTO> GetByUserId(int UserId, int CampaignId)
        {
            List <RedeemedCountDTO> RedeemedCountDTOList = new List <RedeemedCountDTO>();

            try
            {
                UnitOfWork uow = new UnitOfWork();
                IEnumerable <RedeemedCount> RedeemedCount = uow.RedeemedCountRepo.GetAll().Where(e => e.UserId == UserId && e.EcouponCampaignId == CampaignId);
                if (RedeemedCount != null)
                {
                    foreach (var item in RedeemedCount)
                    {
                        EcouponCampaignDTO EcouponCampaignDTO = new EcouponCampaignDTO();
                        EcouponCampaignDTO = EcouponCampaignService.GetById(item.EcouponCampaignId);
                        if (EcouponCampaignDTO.ExpiresOn > System.DateTime.Now)
                        {
                            RedeemedCountDTO RedeemedCountDTO = new RedeemedCountDTO();
                            RedeemedCountDTO = Transform.RedeemedCountToDTO(item);

                            UserDTO UserDTO = new UserDTO();
                            UserDTO = UserService.GetById(UserId);
                            RedeemedCountDTO.UserName = UserDTO.Name;
                            RedeemedCountDTO.Location = LocationService.GetById(UserDTO.LocationId).Name;
                            ClientDTO ClientDTO = new ClientDTO();
                            ClientDTO = ClientService.GetById(UserDTO.ClientId);
                            RedeemedCountDTO.ClientName = ClientDTO.Company;

                            RedeemedCountDTOList.Add(RedeemedCountDTO);
                        }
                    }
                }

                return(RedeemedCountDTOList);
            }
            catch
            {
                //  throw;
                return(RedeemedCountDTOList);
            }
        }
示例#4
0
 public void EditEcouponCampaign(string accessId, EcouponCampaignDTO EcouponCampaignDTO)
 {
     try
     {
         EcouponCampaignService.Edit(EcouponCampaignDTO);
     }
     catch (TimeoutException)
     {
         throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.RequestTimeout)
         {
             Content      = new StringContent("An error occurred, please try again or contact the administrator."),
             ReasonPhrase = "Critical Exception"
         });
     }
     catch (Exception)
     {
         throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.InternalServerError)
         {
             Content      = new StringContent("An error occurred, please try again or contact the administrator."),
             ReasonPhrase = "Critical Exception"
         });
     }
 }
示例#5
0
        public static void ReadEcouponEcouponCampaign()
        {
            List <EcouponCampaignDTO> EcouponCampaignDTOList = new List <EcouponCampaignDTO>();

            EcouponCampaignDTOList = EcouponCampaignService.GetEcouponCampaignNotSentList();
            if (EcouponCampaignDTOList != null)
            {
                foreach (var item in EcouponCampaignDTOList)
                {
                    try
                    {
                        EcouponCampaignDTO EcouponCampaignDTO = new EcouponCampaignDTO();
                        EcouponCampaignDTO = item;
                        DateTime ScheduledDate = EcouponCampaignDTO.SendOn.Date;
                        DateTime Time;
                        if (EcouponCampaignDTO.ScheduleTime != "")
                        {
                            Time = Convert.ToDateTime(EcouponCampaignDTO.ScheduleTime);
                        }
                        else
                        {
                            Time = Convert.ToDateTime("12:00 AM");
                        }

                        ScheduledDate = Convert.ToDateTime(ScheduledDate.Date.ToString("MM/dd/yyyy") + " " + Time.TimeOfDay);

                        Console.WriteLine("Scheduled Time = " + ScheduledDate);

                        if (ScheduledDate <= System.DateTime.Now)
                        {
                            if (item.GroupId == null)
                            {
                                SplitMobile(item.ReceipentNumber, EcouponCampaignDTO);
                            }
                            else
                            {
                                string RecipientsNumberList = null;
                                if (item.GroupId > 0)
                                {
                                    GroupContactDTO GroupContactDTO = new GroupContactDTO();
                                    GroupDTO        GroupDTO        = new GroupDTO();
                                    GroupDTO = GroupService.GetById(Convert.ToInt32(item.GroupId));
                                    //GroupContactDTO = GroupService.GetGroupContactById(Convert.ToInt32(GroupDTO.Id));

                                    List <ContactDTO> ContactDTO = new List <ContactDTO>();
                                    ContactDTO = GroupContactService.GetGroupIdWiseContacts(GroupDTO.Id);

                                    foreach (var Contactitem in ContactDTO)  //GroupContactDTO.Contacts
                                    {
                                        RecipientsNumberList = Contactitem.MobileNumber + "," + RecipientsNumberList;
                                    }
                                }
                                else if (item.ForAllContact == true)
                                {
                                    RecipientsNumberList = null;
                                    RecipientsNumberList = ContactService.GetAllReceipentNumberByClientId(item.ClientId);
                                    RecipientsNumberList = RecipientsNumberList + ",";
                                }

                                item.ReceipentNumber = RecipientsNumberList.Remove(RecipientsNumberList.LastIndexOf(','));
                                item.RecipientsCount = CommonService.GetRecipientsCount(item.ReceipentNumber);
                                EcouponCampaignService.EditEcouponCampaignFromBackend(item);

                                EcouponCampaignDTO EcouponCampaignGrpDTO = new EcouponCampaignDTO();
                                EcouponCampaignGrpDTO = item;
                                SplitMobile(item.ReceipentNumber, EcouponCampaignGrpDTO);
                            }
                        }
                        else
                        {
                        }
                    }
                    catch (Exception ex)
                    {
                        using (FileStream file = new FileStream(Directory.GetCurrentDirectory() + "\\msgBlasterBackendService_Log.txt", FileMode.Append, FileAccess.Write))
                        {
                            StreamWriter streamWriter = new StreamWriter(file);
                            streamWriter.WriteLine(System.DateTime.Now + " - " + "  ReadEcouponEcouponCampaign()" + " - " + ex.Message);
                            streamWriter.Close();
                        }

                        continue;
                    }
                }
            }


            //Check Client Balance

            //Modify Client Balance
        }
示例#6
0
        private static bool ActualSmsSend(string mobilenumber, string message, string Gateway, EcouponCampaignDTO EcouponCampaignDTO, ClientDTO ClientDTO, string CouponCode)
        {
            string result      = "";
            bool   IsSent      = false;
            int    SMSMsgCount = GetMessageCount(message);

            message = MsgCorrect(message);


            if (message != "" && mobilenumber != "")// Check for empty message.
            {
                string Url = ConfigurationManager.AppSettings["TransactionalGateWay"].ToString();
                Url = Url.Replace("%26", "&");
                Url = Url.Replace("[recipient]", mobilenumber);
                Url = Url.Replace("[message]", message);
                if (Gateway != "022751")                     //if (Gateway.ToLower() != "default")
                {
                    Url = Url.Replace("[gateway]", Gateway); //Gateway = "MSGBLS"
                }
                else
                {
                    Url = "";
                    Url = ConfigurationManager.AppSettings["PromotionalGateWay"].ToString();
                    Url = Url.Replace("%26", "&");
                    Url = Url.Replace("[recipient]", mobilenumber);
                    Url = Url.Replace("[message]", message);
                }

                HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(Url);
                myRequest.Method = "GET";
                WebResponse  myResponse = myRequest.GetResponse();
                StreamReader sr         = new StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8);
                result = sr.ReadToEnd();
                sr.Close();

                string statuscode = "";
                if (result.Contains('|'))
                {
                    statuscode = result.Substring(0, result.IndexOf('|'));
                }
                else
                {
                    statuscode = result;
                }

                string SMSReplyMessage = SMSResult(statuscode) + "-" + result; //result
                myResponse.Close();

                if (statuscode == "1701")
                {
                    IsSent = true;
                    CouponDTO CouponDTO = new CouponDTO();
                    //CouponDTO.IsSuccess = true;
                    CouponDTO.EcouponCampaignId = EcouponCampaignDTO.Id;
                    CouponDTO.MobileNumber      = mobilenumber;
                    CouponDTO.Code      = CouponCode;
                    CouponDTO.IsRedeem  = false;
                    CouponDTO.MessageId = result;
                    SettingDTO SettingDTO = new SettingDTO();
                    SettingDTO = SettingService.GetById(1);
                    double ActualSMSMsgCount = SettingDTO.NationalCouponSMSCount * SMSMsgCount;
                    CouponDTO.MessageCount    = SMSMsgCount;
                    CouponDTO.RequiredCredits = ActualSMSMsgCount;
                    CouponDTO.Message         = message;
                    //CouponDTO.MessageStatus = SMSReplyMessage;
                    //CouponDTO.GatewayID = Gateway;
                    CouponDTO.SentDateTime = System.DateTime.Now;
                    CouponDTO.IsCouponSent = true;
                    //CouponDTO.MessageID = statuscode;

                    //if (statuscode == "1701")
                    //{
                    //    CampaignLogDTO.IsSuccess = true;
                    //}
                    //else if (statuscode != "1701")
                    //{
                    //    CampaignLogDTO.IsSuccess = false;
                    //}
                    CouponService.Create(CouponDTO);

                    //// Reduce SMS Credits From Client
                    //ClientDTO.SMSCredit = ClientDTO.SMSCredit - ActualSMSMsgCount;  // SMSMsgCount;
                    //ClientService.Edit(ClientDTO);
                }
            }

            return(IsSent);// result;
        }
示例#7
0
        public static String SplitMobile(string Mobile, EcouponCampaignDTO EcouponCampaignDTO)
        {
            string result = "";
            bool   IsSent = false;

            try
            {
                string finalstring = "";

                // Input string contain separators.
                string value1 = Mobile;

                char[] delimiter1 = new char[] { ',', ';' };   // <-- Split on these
                // ... Use StringSplitOptions.RemoveEmptyEntries.
                string[] array2 = value1.Split(delimiter1,
                                               StringSplitOptions.RemoveEmptyEntries);

                //Console.WriteLine();
                foreach (string mobile in array2)
                {
                    Console.WriteLine(mobile);
                    bool isMessageSent = CheckCampainLogByCampaingIdAndMobile(EcouponCampaignDTO.Id, Mobile);

                    ClientDTO ClientDTO = new ClientDTO();
                    ClientDTO = ClientService.GetById(EcouponCampaignDTO.ClientId);

                    //SMSGatewayDTO SMSGatewayDTO = new SMSGatewayDTO();
                    //SMSGatewayDTO = SMSGatewayService.GetById(ClientDTO.SMSGatewayId);

                    if (isMessageSent == false)
                    {
                        Console.Write("Send SMS");
                        //if (ClientDTO.SMSCredit > 0)
                        //{
                        int ecouponcode = 0;
createnew:
                        CommonService CommonService = new CommonService();
                        ecouponcode = CommonService.GetRandomNumber();
                        string ecouponcodelength = ecouponcode.ToString();
                        if (ecouponcodelength.Length < 6 || ecouponcodelength.Length > 6)
                        {
                            goto createnew;
                        }
                        List <CouponDTO> CouponDTOList = new List <CouponDTO>();
                        CouponDTOList = CouponService.GetCouponListByCodeAndMobile(ecouponcode.ToString(), mobile);
                        if (CouponDTOList.Count == 0)
                        {
                            string Message = "";
                            EcouponCampaignDTO.Message = EcouponCampaignService.GetById(EcouponCampaignDTO.Id).Message;

                            //macros
                            List <Macros> MacrosList = Enum.GetValues(typeof(Macros)).Cast <Macros>().ToList();

                            ContactDTO ContactDTO = new ContactDTO();
                            ContactDTO = ContactService.GetContactByMobileNumberAndClientId(mobile, EcouponCampaignDTO.ClientId);

                            if (MacrosList.Count() > 0)
                            {
                                foreach (var item in MacrosList)
                                {
                                    if (item.ToString() == "FirstName")
                                    {
                                        string FirstName = "";
                                        FirstName = ContactDTO.FirstName;   // CommonService.GetFirstname(ContactDTO.Name);
                                        EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", FirstName);
                                    }

                                    if (item.ToString() == "LastName")
                                    {
                                        string LastName = "";
                                        LastName = ContactDTO.LastName;   // CommonService.GetLastname(ContactDTO.Name);
                                        EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", LastName);
                                    }

                                    if (item.ToString() == "BirthDate")
                                    {
                                        if (ContactDTO.BirthDate != null)
                                        {
                                            DateTime BirthDate = Convert.ToDateTime(ContactDTO.BirthDate);
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", BirthDate.ToString("dd-MMM"));
                                        }
                                        else
                                        {
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", "");
                                        }
                                    }

                                    if (item.ToString() == "AnniversaryDate")
                                    {
                                        if (ContactDTO.AnniversaryDate != null)
                                        {
                                            DateTime AnniversaryDate = Convert.ToDateTime(ContactDTO.AnniversaryDate);
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", AnniversaryDate.ToString("dd-MMM"));
                                        }
                                        else
                                        {
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", "");
                                        }
                                    }

                                    if (item.ToString() == "Email")
                                    {
                                        if (ContactDTO.Email != null)
                                        {
                                            string Email = ContactDTO.Email;
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", Email);
                                        }
                                        else
                                        {
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", "");
                                        }
                                    }

                                    if (item.ToString() == "MobileNumber")
                                    {
                                        if (ContactDTO.MobileNumber != null)
                                        {
                                            string MobileNumber = ContactDTO.MobileNumber;
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", MobileNumber);
                                        }
                                        else
                                        {
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", "");
                                        }
                                    }

                                    if (item.ToString() == "Gender")
                                    {
                                        if (ContactDTO.Gender != null)
                                        {
                                            string Gender = ContactDTO.Gender;
                                            //if (Gender == "0")
                                            //{
                                            //    Gender = "Male";
                                            //}
                                            //else
                                            //{
                                            //    Gender = "Female";
                                            //}
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", Gender);
                                        }
                                        else
                                        {
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", "");
                                        }
                                    }


                                    if (item.ToString() == "ExpiresOn")
                                    {
                                        if (EcouponCampaignDTO.ExpiresOn != null)
                                        {
                                            DateTime ExpiresOn = Convert.ToDateTime(EcouponCampaignDTO.ExpiresOn);
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", ExpiresOn.ToString("dd-MMM-yy"));
                                        }
                                        else
                                        {
                                            EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", "");
                                        }
                                    }



                                    if (item.ToString() == "Code")
                                    {
                                        string Code = ecouponcode.ToString();
                                        EcouponCampaignDTO.Message = EcouponCampaignDTO.Message.Replace("[" + item.ToString() + "]", Code);
                                    }
                                }

                                Message = EcouponCampaignDTO.Message;
                                // Check the Message required credits and actual client credits
                                double SMSMsgCount = GetMessageCount(Message);

                                SettingDTO SettingDTO = new SettingDTO();
                                SettingDTO  = SettingService.GetById(1);
                                SMSMsgCount = SMSMsgCount * SettingDTO.NationalCouponSMSCount;

                                ////Check Credits
                                //if (ClientDTO.SMSCredit >= SMSMsgCount)
                                //{
                                string           sender = "";
                                List <CouponDTO> CouponDTOListDuplicate = new List <CouponDTO>();
                                CouponDTOListDuplicate = CouponService.GetCouponListByEcouponCampaignIdAndMobile(EcouponCampaignDTO.Id, mobile);
                                if (CouponDTOListDuplicate.Count != 0)
                                {
                                    ////If already sent then skip
                                    continue;
                                    ////foreach (var item in CouponDTOListDuplicate)
                                    ////{
                                    ////    if (item.IsExpired != true)
                                    ////    {
                                    ////        string MobileDuplicate = null;
                                    ////        CouponDTO CouponDTO = new CouponDTO();
                                    ////        CouponDTO = item;
                                    ////        CouponDTO.IsExpired = true;
                                    ////        CouponService.Edit(CouponDTO);


                                    ////        MobileDuplicate = item.MobileNumber;
                                    ////        Message = item.Message;
                                    ////        ecouponcode = Convert.ToInt32(item.Code);



                                    ////        if (ClientDTO.SenderCode != null && ClientDTO.SenderCode != "")
                                    ////        {
                                    ////            sender = ClientDTO.SenderCode;
                                    ////        }
                                    ////        else
                                    ////        {

                                    ////            sender = "022751";
                                    ////        }

                                    ////        IsSent = ActualSmsSend(mobile, Message, sender, EcouponCampaignDTO, ClientDTO, ecouponcode.ToString());
                                    ////        continue;
                                    ////    }

                                    ////}
                                }


                                if (ClientDTO.SenderCode != null && ClientDTO.SenderCode != "")
                                {
                                    sender = ClientDTO.SenderCode;
                                }
                                else
                                {
                                    sender = "022751";
                                }

                                IsSent = ActualSmsSend(mobile, Message, sender, EcouponCampaignDTO, ClientDTO, ecouponcode.ToString());
                                //}
                                //else goto nextprocess;
                            }

                            // Message = ReformatMsg(EcouponCampaignDTO.Message + " Your ecoupon code is " + ecouponcode + "");
                        }
                        else if (CouponDTOList.Count >= 1)
                        {
                            goto createnew;
                        }

                        //}
                        //else
                        //{
                        //    goto nextprocess;
                        //}
                    }
                    else
                    {
                    }
                }

                // Modify EcouponCampaign IsSent status
                int TotatCouponSent = CouponService.GetCouponCountByEcouponCampaignId(EcouponCampaignDTO.Id);
                //if (EcouponCampaignDTO.RecipientsCount == TotatCouponSent)
                if (EcouponCampaignDTO.RecipientsCount <= TotatCouponSent)
                {
                    EcouponCampaignDTO.IsSent           = true;
                    EcouponCampaignDTO.Message          = EcouponCampaignService.GetById(EcouponCampaignDTO.Id).Message;
                    EcouponCampaignDTO.RequiredCredits  = CouponService.GetECouponCampaignRequiredCreditsByEcouponCampaignId(EcouponCampaignDTO.Id);
                    EcouponCampaignDTO.CreditsDiffrence = EcouponCampaignDTO.ConsumedCredits - EcouponCampaignDTO.RequiredCredits;

                    if (EcouponCampaignDTO.ConsumedCredits != EcouponCampaignDTO.RequiredCredits)
                    {
                        if (EcouponCampaignDTO.CreditsDiffrence < 0)
                        {
                            //// deduct clients balance
                            ClientDTO ClientDTOUpdate = new ClientDTO();
                            ClientDTOUpdate           = ClientService.GetById(EcouponCampaignDTO.ClientId);
                            ClientDTOUpdate.SMSCredit = ClientDTOUpdate.SMSCredit - (-(EcouponCampaignDTO.CreditsDiffrence));
                            ClientService.Edit(ClientDTOUpdate);

                            ////Reconcile Ecoupon Campaign
                            EcouponCampaignDTO.IsReconcile   = true;
                            EcouponCampaignDTO.ReconcileDate = System.DateTime.Now;
                            EcouponCampaignService.EditEcouponCampaignFromBackend(EcouponCampaignDTO);
                        }
                        else if (EcouponCampaignDTO.CreditsDiffrence > 0)
                        {
                            ////Add clients balance
                            ClientDTO ClientDTOUpdate = new ClientDTO();
                            ClientDTOUpdate           = ClientService.GetById(EcouponCampaignDTO.ClientId);
                            ClientDTOUpdate.SMSCredit = ClientDTOUpdate.SMSCredit + EcouponCampaignDTO.CreditsDiffrence;
                            ClientService.Edit(ClientDTOUpdate);

                            ////Reconcile Ecoupon Campaign
                            EcouponCampaignDTO.IsReconcile   = true;
                            EcouponCampaignDTO.ReconcileDate = System.DateTime.Now;
                            EcouponCampaignService.EditEcouponCampaignFromBackend(EcouponCampaignDTO);
                        }
                    }
                    else if (EcouponCampaignDTO.CreditsDiffrence == 0)
                    {
                        EcouponCampaignDTO.IsReconcile   = true;
                        EcouponCampaignDTO.ReconcileDate = System.DateTime.Now;
                        EcouponCampaignService.EditEcouponCampaignFromBackend(EcouponCampaignDTO);
                    }

                    //EcouponCampaignService.EditEcouponCampaignFromBackend(EcouponCampaignDTO);
                }

nextprocess:
                result = finalstring;
            }

            catch (Exception ex)
            {
                result = "";

                using (FileStream file = new FileStream(Directory.GetCurrentDirectory() + "\\msgBlasterBackendService_Log.txt", FileMode.Append, FileAccess.Write))
                {
                    StreamWriter streamWriter = new StreamWriter(file);
                    streamWriter.WriteLine(System.DateTime.Now + " - " + "  SplitMobile()" + " - " + ex.Message);
                    streamWriter.Close();
                }
            }
            return(result);
        }
示例#8
0
        public static void CreateCampaigns()
        {
            List <ClientDTO> ClientDTOList = new List <ClientDTO>();

            ClientDTOList = ClientService.GetAllActiveClients();

            SettingDTO SettingDTO = new SettingDTO();

            SettingDTO = SettingService.GetById(1);

            if (ClientDTOList != null)
            {
                foreach (var item in ClientDTOList)
                {
                    if (item.IsSendBirthdayMessages || item.IsSendBirthdayCoupons)
                    {
                        string            RecipientsNumberList = null;
                        int               userId         = UserService.GetAdminUserByClientId(item.Id);
                        List <ContactDTO> ContactDTOList = new List <ContactDTO>();
                        ContactDTOList = ContactService.GetContactsForTodaysBirthday();
                        if (ContactDTOList.Count > 0)
                        {
                            if (ContactDTOList.Count == 1)
                            {
                                foreach (var Contactitem in ContactDTOList)
                                {
                                    RecipientsNumberList = Contactitem.MobileNumber;
                                }
                            }
                            else
                            {
                                foreach (var Contactitem in ContactDTOList)
                                {
                                    RecipientsNumberList = Contactitem.MobileNumber + "," + RecipientsNumberList;
                                }

                                RecipientsNumberList = RecipientsNumberList.Remove(RecipientsNumberList.Length - 1);
                            }

                            if (item.IsSendBirthdayMessages)
                            {
                                CampaignDTO CampaignDTO = new CampaignDTO();
                                CampaignDTO.Message          = item.BirthdayMessage;
                                CampaignDTO.RecipientsNumber = RecipientsNumberList;
                                CampaignDTO.Name             = "Birthday Message_" + string.Format("{0:G}", System.DateTime.Now);;
                                CampaignDTO.ClientId         = item.Id;
                                CampaignDTO.CreatedDate      = System.DateTime.Now.Date;
                                CampaignDTO.IsScheduled      = false;
                                CampaignDTO.GroupId          = null;
                                CampaignDTO.ScheduledDate    = System.DateTime.Now.Date;
                                CampaignDTO.CreatedBy        = userId;

                                ////Calculate consumed credits
                                //double ConsumedCreditPerOneMsg = CommonService.GetConsumedCreditsForOneMessage(CampaignDTO.Message, false);
                                //int RecepientsCount = CommonService.GetRecipientsCount(CampaignDTO.RecipientsNumber);
                                //CampaignDTO.ConsumededCredits = RecepientsCount * ConsumedCreditPerOneMsg;


                                CampaignService.CreateCampaignFromBackend(CampaignDTO);
                            }

                            if (item.IsSendBirthdayCoupons)
                            {
                                EcouponCampaignDTO EcouponCampaignDTO = new EcouponCampaignDTO();
                                EcouponCampaignDTO.Message           = item.BirthdayMessage;
                                EcouponCampaignDTO.ReceipentNumber   = RecipientsNumberList;
                                EcouponCampaignDTO.Title             = "Birthday Coupon_" + string.Format("{0:G}", System.DateTime.Now);;
                                EcouponCampaignDTO.ClientId          = item.Id;
                                EcouponCampaignDTO.CreatedDate       = System.DateTime.Now.Date;
                                EcouponCampaignDTO.SendOn            = System.DateTime.Now.Date;
                                EcouponCampaignDTO.IsScheduled       = false;
                                EcouponCampaignDTO.GroupId           = null;
                                EcouponCampaignDTO.MinPurchaseAmount = Convert.ToDouble(item.MinPurchaseAmountForBirthdayCoupon);
                                EcouponCampaignDTO.CreatedBy         = userId;

                                int value = Convert.ToInt32(item.BirthdayCouponExpire);

                                string expire_format = item.BirthdayCouponExpireType;
                                if (expire_format == "Day")
                                {
                                    EcouponCampaignDTO.ExpiresOn = System.DateTime.Now.Date.AddDays(value);
                                }
                                else if (expire_format == "Month")
                                {
                                    EcouponCampaignDTO.ExpiresOn = System.DateTime.Now.Date.AddMonths(value);
                                }
                                else if (expire_format == "Week")
                                {
                                    value = value * 7;
                                    EcouponCampaignDTO.ExpiresOn = System.DateTime.Now.Date.AddDays(value);
                                }
                                ////Calculate consumed credits
                                //double ConsumedCreditPerOneMsg = CommonService.GetConsumedCreditsForOneMessage(EcouponCampaignDTO.Message, true);
                                //int RecepientsCount = CommonService.GetRecipientsCount(EcouponCampaignDTO.ReceipentNumber);
                                //EcouponCampaignDTO.ConsumededCredits = RecepientsCount * ConsumedCreditPerOneMsg;

                                EcouponCampaignService.CreateEcouponCampaignBackend(EcouponCampaignDTO);
                            }
                        }
                    }

                    if (item.IsSendAnniversaryMessages || item.IsSendAnniversaryCoupons)
                    {
                        string            RecipientsNumberList = null;
                        int               userId         = UserService.GetAdminUserByClientId(item.Id);
                        List <ContactDTO> ContactDTOList = new List <ContactDTO>();
                        ContactDTOList = ContactService.GetContactsForTodaysAnniversary();
                        if (ContactDTOList.Count > 0)
                        {
                            if (ContactDTOList.Count == 1)
                            {
                                foreach (var Contactitem in ContactDTOList)
                                {
                                    RecipientsNumberList = Contactitem.MobileNumber;
                                }
                            }
                            else
                            {
                                foreach (var Contactitem in ContactDTOList)
                                {
                                    RecipientsNumberList = Contactitem.MobileNumber + "," + RecipientsNumberList;
                                }

                                RecipientsNumberList = RecipientsNumberList.Remove(RecipientsNumberList.Length - 1);
                            }

                            if (item.IsSendAnniversaryMessages)
                            {
                                CampaignDTO CampaignDTO = new CampaignDTO();
                                CampaignDTO.Message          = item.AnniversaryMessage;
                                CampaignDTO.RecipientsNumber = RecipientsNumberList;
                                CampaignDTO.Name             = "Anniversary Message_" + string.Format("{0:G}", System.DateTime.Now);;
                                CampaignDTO.ClientId         = item.Id;
                                CampaignDTO.CreatedDate      = System.DateTime.Now.Date;
                                CampaignDTO.IsScheduled      = false;
                                CampaignDTO.GroupId          = null;
                                CampaignDTO.ScheduledDate    = System.DateTime.Now.Date;
                                CampaignDTO.CreatedBy        = userId;

                                ////Calculate consumed credits
                                //double ConsumedCreditPerOneMsg = CommonService.GetConsumedCreditsForOneMessage(CampaignDTO.Message, false);
                                //int RecepientsCount = CommonService.GetRecipientsCount(CampaignDTO.RecipientsNumber);
                                //CampaignDTO.ConsumededCredits = RecepientsCount * ConsumedCreditPerOneMsg;

                                CampaignService.CreateCampaignFromBackend(CampaignDTO);
                            }

                            if (item.IsSendAnniversaryCoupons)
                            {
                                EcouponCampaignDTO EcouponCampaignDTO = new EcouponCampaignDTO();
                                EcouponCampaignDTO.Message           = item.AnniversaryMessage;
                                EcouponCampaignDTO.ReceipentNumber   = RecipientsNumberList;
                                EcouponCampaignDTO.Title             = "Anniversary Coupon_" + string.Format("{0:G}", System.DateTime.Now);;
                                EcouponCampaignDTO.ClientId          = item.Id;
                                EcouponCampaignDTO.CreatedDate       = System.DateTime.Now.Date;
                                EcouponCampaignDTO.SendOn            = System.DateTime.Now.Date;
                                EcouponCampaignDTO.IsScheduled       = false;
                                EcouponCampaignDTO.GroupId           = null;
                                EcouponCampaignDTO.MinPurchaseAmount = Convert.ToDouble(item.MinPurchaseAmountForAnniversaryCoupon);
                                EcouponCampaignDTO.CreatedBy         = userId;

                                int value = Convert.ToInt32(item.AnniversaryCouponExpire);

                                string expire_format = item.AnniversaryCouponExpireType;
                                if (expire_format == "Day")
                                {
                                    EcouponCampaignDTO.ExpiresOn = System.DateTime.Now.Date.AddDays(value);
                                }
                                else if (expire_format == "Month")
                                {
                                    EcouponCampaignDTO.ExpiresOn = System.DateTime.Now.Date.AddMonths(value);
                                }
                                else if (expire_format == "Week")
                                {
                                    value = value * 7;
                                    EcouponCampaignDTO.ExpiresOn = System.DateTime.Now.Date.AddDays(value);
                                }

                                ////Calculate consumed credits
                                //double ConsumedCreditPerOneMsg = CommonService.GetConsumedCreditsForOneMessage(EcouponCampaignDTO.Message, true);
                                //int RecepientsCount = CommonService.GetRecipientsCount(EcouponCampaignDTO.ReceipentNumber);
                                //EcouponCampaignDTO.ConsumededCredits = RecepientsCount * ConsumedCreditPerOneMsg;

                                EcouponCampaignService.CreateEcouponCampaignBackend(EcouponCampaignDTO);
                            }
                        }
                    }
                }
            }
        }