/// <summary> /// 拼接XML /// </summary> /// <param name="model"></param> /// <returns></returns> public string StatisticsDataXMLAppend(SubjectSaleVisitStatisticsDataModel model) { StringBuilder sb = new StringBuilder(); if (model != null && !string.IsNullOrEmpty(model.SubjectNo)) { sb.Append("<XML>"); sb.Append("<SubjectNo>" + model.SubjectNo + "</SubjectNo>"); sb.Append("<SaleStatistic>"); sb.Append("<SaleInfoID>" + model.SaleStatistic.SubjectSaleStatisticsID + "</SaleInfoID><SubjectNo>" + model.SaleStatistic.SubjectNo + "</SubjectNo>"); sb.Append("<DateStatistics>" + model.SaleStatistic.DateStatistics.ToString("yyyy-MM-ddTHH:mm:ss") + "</DateStatistics><OrderNums>" + model.SaleStatistic.OrderNums + "</OrderNums>"); sb.Append("<Amount>" + model.SaleStatistic.Amount + "</Amount><YesterDayAmount>" + model.SaleStatistic.YesterDayAmount + "</YesterDayAmount><CostAmount>" + model.SaleStatistic.CostAmount + "</CostAmount>"); sb.Append("<StockCount>" + model.SaleStatistic.StockCount + "</StockCount><SKUCount>" + model.SaleStatistic.SKUCount + "</SKUCount><SaleCount>" + model.SaleStatistic.SaleCount + "</SaleCount>"); sb.Append("<SaledSKUCount>" + model.SaleStatistic.SaledSKUCount + "</SaledSKUCount><StockTotalAmount>" + model.SaleStatistic.StockTotalAmount + "</StockTotalAmount><ListingOutletFlag>" + model.SaleStatistic.ListingOutletFlag + "</ListingOutletFlag>"); sb.Append("</SaleStatistic>"); sb.Append("<VisitStatistic>"); sb.Append("<VisitinfoID>" + model.VisitStatistic.SubjectVisitStatisticsID + "</VisitinfoID><SubjectNo>" + model.VisitStatistic.SubjectNo + "</SubjectNo>"); sb.Append("<DateStatistics>" + model.VisitStatistic.DateStatistics.ToString("yyyy-MM-ddTHH:mm:ss") + "</DateStatistics><PV>" + model.VisitStatistic.PV + "</PV><UV>" + model.VisitStatistic.UV + "</UV>"); sb.Append("<VIP>" + model.VisitStatistic.VIP + "</VIP><GoldenVIP>" + model.VisitStatistic.GoldenVIP + "</GoldenVIP><PlatinaVIP>" + model.VisitStatistic.PlatinaVIP + "</PlatinaVIP><DiamondVIP>" + model.VisitStatistic.DiamondVIP + "</DiamondVIP>"); sb.Append("<OrderNums>" + model.VisitStatistic.OrderNums + "</OrderNums><ListingOutletFlag>" + model.VisitStatistic.ListingOutletFlag + "</ListingOutletFlag>"); sb.Append("</VisitStatistic>"); sb.Append("</XML>"); } else { sb.Append(""); } return(sb.ToString()); }
/// <summary> /// 获取奥莱活动列表 /// <param name="type">1今日新开,2正在进行,3即将结束</param> /// </summary> /// <returns></returns> public void GetSubjectDataList(int type) { List <SubjectSaleVisitStatisticsDataModel> list = new List <SubjectSaleVisitStatisticsDataModel>(); string caheKey = string.Empty; string subjectNo = string.Empty; string startDate = string.Empty; string stopDate = string.Empty; StringBuilder sql = new StringBuilder(); sql.Append("SELECT sub.[SubjectNo] ,sub.[SubjectName] "); sql.Append("FROM [SWfsSubject] (NOLOCK) AS sub "); sql.Append("WHERE sub.SubjectType = 0 "); sql.Append("AND sub.IsRelated = 0 "); sql.Append("AND sub.[Status] = 1 "); sql.Append("AND sub.SubjectTemplate != 5 "); sql.Append("AND sub.IsAudited = 1 "); sql.Append("AND CHARINDEX('zsqd001', sub.ChannelNo) > 0 "); if (type == 1) //今天新开的活动 { startDate = DateTime.Now.ToString("yyyy-MM-dd"); sql.Append(" AND DATEDIFF(day, sub.DateBegin, @StartDate) = 0 AND sub.DateEnd > getdate() "); } else if (type == 2) //正在进行活动(包括今日新开活动、即将结束活动) { startDate = DateTime.Now.ToString("yyyy-MM-dd 00:00:00"); stopDate = DateTime.Now.ToString(); sql.Append(" AND sub.DateBegin < @StartDate AND sub.DateEnd > @StopDate "); } else if (type == 3) //已结束的活动 { sql.Append(" AND sub.DateEnd < GETDATE() AND DATEDIFF(mm, DateEnd, GETDATE()) <= 2 "); } sql.Append("ORDER BY sub.DateBegin DESC ,sub.DateCreate DESC "); SqlParameter[] param = new SqlParameter[] { new SqlParameter("@StartDate", startDate), new SqlParameter("@StopDate", stopDate) }; SqlDataReader reader = SqlHelper.ExecuteReader(WfsConnString, CommandType.Text, sql.ToString(), param); if (reader != null) { while (reader.Read()) { subjectNo = reader["SubjectNo"] != null ? reader["SubjectNo"].ToString() : ""; SubjectSaleVisitStatisticsDataModel model = new SubjectSaleVisitStatisticsDataModel(); model.SubjectNo = subjectNo; System.Threading.Thread.Sleep(300); model.SaleStatistic = GetSubjectSaleStatisticsData(type, subjectNo); //销售统计 System.Threading.Thread.Sleep(300); model.VisitStatistic = GetSubjectVisitStatisticsData(subjectNo); //访问统计 list.Add(model); } reader.Dispose(); reader.Close(); if (list != null && list.Count() > 0) { #region 加入缓存 if (type == 1) { //caheKey = "AoLaiSubjectSaleVisitStatisticData_Today"; //SetRedisCache(caheKey, list); SubjectStatisticDataMain(list, type); Console.WriteLine("今日新开活动统计数据已加入缓存!"); } else if (type == 2) { //caheKey = "AoLaiSubjectSaleVisitStatisticData_Runing"; //SetRedisCache(caheKey, list); SubjectStatisticDataMain(list, type); Console.WriteLine("进行中活动统计数据已加入缓存!"); } else if (type == 3) { //caheKey = "AoLaiSubjectSaleVisitStatisticData_End"; //SetRedisCache(caheKey, list); SubjectStatisticDataMain(list, type); Console.WriteLine("已结束活动统计数据已加入缓存!"); } #endregion } } }