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); } } } } }
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); } }
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" }); } }
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 }
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; }
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); }
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); } } } } } }