コード例 #1
0
        /// <summary>
        /// Get Sent SMS Data
        /// </summary>
        /// <param name="sentSMS"></param>
        /// <returns></returns>
        public async Task <SentSMSDTO> GetSentSMSAsync(SentSMS sentSMS)
        {
            SentSMSDTO sentSMSDTO = new SentSMSDTO();

            using (var db = DbConnectionFactory.OpenDbConnection())
            {
                //here is room for better improvement.
                var smsResults = db.SelectAsync <Sms>();
                var dataresult = smsResults.Result.Where(t => t.CreatedAt >= sentSMS.DateTimeFrom && t.CreatedAt <= sentSMS.DateTimeTo);


                var smsData = dataresult.Skip((int)sentSMS.Skip).Take((int)sentSMS.take).ToList();
                if (smsData.Count > 0)
                {
                    sentSMSDTO.TotalCount = smsData.Count();
                    sentSMSDTO.SmsDetail  = new List <SmsDTO>();
                    foreach (var data in smsData)
                    {
                        sentSMSDTO.SmsDetail.Add(new SmsDTO()
                        {
                            To = data.To, Text = data.Text, From = data.From, State = data.State, CreatedAt = data.CreatedAt, Mcc = data.Mcc, Price = data.Price
                        });
                    }
                }
                return(await Task.FromResult(sentSMSDTO));
            }
        }
コード例 #2
0
        /// <summary>
        /// Get the SMS Details sent
        /// </summary>
        /// <param name="sentSMS"></param>
        /// <returns></returns>
        public async Task <SentSMSDTO> Get(SentSMS sentSMS)
        {
            var responseData = await Repository.GetSentSMSAsync(sentSMS);


            if (responseData == null)
            {
                Response.StatusCode = (int)HttpStatusCode.NotFound;
            }
            return(responseData);
        }
コード例 #3
0
        private void SaveSentSms(List<Client> clients, Guid templateId, bool smsServiceResponce)
        {
            var smsIdCollection = new List<Guid>();
            foreach (var client in clients)
            {
                var newSentSms = new SentSMS
                {
                    Id = Guid.NewGuid(),
                    ClientId = client.Id,
                    SendedDate = DateTime.UtcNow,
                    SMSTemplateId = templateId,
                    SMSServiceResponce = smsServiceResponce
                };
                smsIdCollection.Add(newSentSms.Id);

                _unitOfWork.SentSMSRepository.Add(newSentSms);
                _unitOfWork.SentSMSRepository.Save();
            }
            FileLoadHelper.AddImportLogSms(smsIdCollection);
        }