public JsonResult SentSmsMultipleClient(string[] clientsId, string templateId, bool isSend, SmsSenderType smsSenderType) { var clients = GetClientsToSendSms(smsSenderType, clientsId); if (string.IsNullOrEmpty(templateId)) return Json(false, JsonRequestBehavior.AllowGet); // sent standard sms _smsSender = new DefaultSmsSender(); _smsSender.SendSms(isSend, clients, new Guid(templateId), string.Empty); return Json(true, JsonRequestBehavior.AllowGet); }
private List<Client> GetClientsToSendSms(SmsSenderType smsSenderType, string[] clientsId) { var clients = new List<Client>(); switch (smsSenderType) { case SmsSenderType.AllClientsSms: { clients.AddRange(_unitOfWork.ClientRepository.GetAll().ToList()); break; } case SmsSenderType.SmsWhereDreamsEqual_0: { clients.AddRange(_unitOfWork.ClientRepository.FindBy(t => t.Dreams == 0).ToList()); break; } case SmsSenderType.SmsWhereDreamsOver_0: { clients.AddRange(_unitOfWork.ClientRepository.FindBy(t => t.Dreams > 0).ToList()); break; } default: { clients.AddRange(clientsId.Where(clientId => !string.IsNullOrEmpty(clientId)).Select(clientId => _unitOfWork.ClientRepository.FindBy(t => t.Id == new Guid(clientId)).FirstOrDefault()).Where(baseClient => baseClient != null)); break; } } return clients; }
public JsonResult SendCustomSMSMultipleClient(string[] clientsId, string smsText, bool isSend, SmsSenderType smsSenderType) { var clients = GetClientsToSendSms(smsSenderType, clientsId); // sent custom sms selected clients _smsSender = new CustomSmsSender(); _smsSender.SendSms(isSend, clients, new Guid(), smsText); return Json(true, JsonRequestBehavior.AllowGet); }