コード例 #1
0
        public HttpResponseBase GetECNList()
        {
            string json = string.Empty;

            try
            {
                EdmContentNew query = new EdmContentNew();
                List<EdmContentNew> store = new List<EdmContentNew>();
                if (!string.IsNullOrEmpty(Request.Params["group_id"]))
                {
                    query.group_id = Convert.ToInt32(Request.Params["group_id"]);
                }
                query.Start = Convert.ToInt32(Request.Params["start"] ?? "0");
                query.Limit = Convert.ToInt32(Request.Params["limit"] ?? "25");
                int totalCount = 0;
                _edmContentNewMgr = new EdmContentNewMgr(mySqlConnectionString);
                store = _edmContentNewMgr.GetECNList(query, out totalCount);
                foreach (var item in store)
                {
                    item.template_data = Server.HtmlDecode(Server.HtmlDecode(item.template_data));
                }
                IsoDateTimeConverter timeConverter = new IsoDateTimeConverter();
                timeConverter.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
                json = "{success:true,totalCount:" + totalCount + ",data:" + JsonConvert.SerializeObject(store, Formatting.Indented, timeConverter) + "}";
            }
            catch (Exception ex)
            {
                Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage();
                logMessage.Content = string.Format("TargetSite:{0},Source:{1},Message:{2}", ex.TargetSite.Name, ex.Source, ex.Message);
                logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name;
                log.Error(logMessage);
                json = "{success:false,totalCount:0,data:[]}";
            }

            this.Response.Clear();
            this.Response.Write(json);
            this.Response.End();
            return this.Response;
        }
コード例 #2
0
 public HttpResponseBase Load()
 {
     string json = string.Empty;
     if (!string.IsNullOrEmpty(Request.Params["content_id"]))
     {
         if (!string.IsNullOrEmpty(Request.Params["log_id"]))
         {
             int log_id = Convert.ToInt32(Request.Params["log_id"]);
             string openAveragePrecent = "0";
             string openAverageCount = "0";
             int content_id = Convert.ToInt32(Request.Params["content_id"]);
             List<EdmContentNew> store = new List<BLL.gigade.Model.EdmContentNew>();
             EdmContentNew query = new BLL.gigade.Model.EdmContentNew();
             EdmContentNew newQuery = new BLL.gigade.Model.EdmContentNew();
             _edmContentNewMgr = new EdmContentNewMgr(mySqlConnectionString);
             query.content_id = content_id;
             int count = 0;
             int successCount = 0;
             int failCount = 0;
             int totalPersonCount = 0;
             int totalCount = 0;
             //電子報主旨和發送時間
             newQuery = _edmContentNewMgr.GetECNList(query, out count).FirstOrDefault();
             string subject = newQuery.subject;
              string date=string.Empty;
           DataTable _dt=_edmContentNewMgr.GetScheduleDate(content_id, log_id);
           if (_dt != null && _dt.Rows.Count > 0)
           {
               date = Convert.ToDateTime(_dt.Rows[0][0].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
               //發信成功人數
               if (DateTime.Now > Convert.ToDateTime(date))
               {
                   successCount = _edmContentNewMgr.GetSendMailSCount(content_id, log_id);
                   //發信失敗人數
                   failCount = _edmContentNewMgr.GetSendMailFCount(content_id, log_id);
                   //總開信人數
                   totalPersonCount = _edmContentNewMgr.GetSendMailCount(content_id, log_id);
                   //開總信次數
                   totalCount = _edmContentNewMgr.GetSendCount(content_id, log_id);
                   //開信率
                   if (successCount == 0)
                   {
                       openAveragePrecent = "0";
                   }
                   else
                   {
                       openAveragePrecent = Math.Round((double)totalPersonCount / successCount * 100, 2) + "%";
                   }
                   //平均開信次數
                   if (totalPersonCount == 0)
                   {
                       openAverageCount = "0";
                   }
                   else
                   {
                       openAverageCount = Math.Round((double)totalCount / totalPersonCount, 2).ToString();
                   }
               }
           }
             json = "{success:true,successCount:'" + successCount + "',failCount:'" + failCount + "',totalPersonCount:'" + totalPersonCount + "',totalCount:'" + totalCount + "',openAveragePrecent:'" + openAveragePrecent + "',openAverageCount:'" + openAverageCount + "',subject:'" + subject + "',date:'" + date + "'}";
         }
     }
     this.Response.Clear();
     this.Response.Write(json);
     this.Response.End();
     return this.Response;
 }