public static Dictionary <string, charDataList> InitChartData(List <string> paramList)
        {
            Dictionary <string, charDataList> charItemList = new Dictionary <string, charDataList>();

            for (int i = 0; i < 24; i++)
            {
                var XLable = i.ToString();
                charItemList[XLable] = new charDataList(XLable);

                Dictionary <string, charDataItemList> charDataItem =
                    new Dictionary <string, charDataItemList>();

                foreach (string param in paramList)
                {
                    charDataItem[param] = new charDataItemList()
                    {
                        Values = 0,
                        series = SeriesDict[param]
                    };
                }

                charItemList[XLable].ItemList = charDataItem;
            }

            return(charItemList);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 店铺成长图标
        /// </summary>
        /// <param name="accid"></param>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <param name="dataType"></param>
        /// <returns></returns>
        public static chartDataModel GetGrouwthList(int accid, string[] dataType, DateTime?start, DateTime?end)
        {
            DateTime startTime = DateTime.Now.Date;
            DateTime endTime   = DateTime.Now.Date;



            Dictionary <string, string> columnList = new Dictionary <string, string>();

            columnList.Add("loginNum", "登录");
            columnList.Add("userNum", "会员数");
            columnList.Add("saleNum", "销售数");
            columnList.Add("saleMoney", "销售金额");
            columnList.Add("smsNum", "短信数");
            columnList.Add("goodsNum", "商品数");
            columnList.Add("orderMoney", "订单金额");
            columnList.Add("acc_Rep", "在线时长");
            columnList.Add("moodNum", "心情");
            chartDataModel chartModel = new chartDataModel();

            chartModel.captionTitle = "店铺成长";
            chartModel.DataList     = new Dictionary <string, charDataList>();

            string columnName = "dayDate,regTime";

            foreach (string dataItemType in dataType)
            {
                columnName += "," + dataItemType;
            }

            List <DapperWhere> sqlWhere = new List <DapperWhere>();

            sqlWhere.Add(new DapperWhere("accountid", accid));
            if (start != null)
            {
                sqlWhere.Add(new DapperWhere("startTime", start, " dayDate>=@startTime "));
                startTime = Convert.ToDateTime(start);
            }
            else
            {
                startTime = new DateTime(1999, 1, 1);
            }
            if (end != null)
            {
                endTime = Convert.ToDateTime(end);
                sqlWhere.Add(new DapperWhere("endTime", end, " dayDate <=@endTime "));
            }

            List <dynamic> dataList = Base.SysRpt_ShopDayInfoBaseBLL.GetList <dynamic>(0, columnName, sqlWhere, " dayDate asc");

            Dictionary <string, charDataList> charItemList = new Dictionary <string, charDataList>();

            if (dataList != null && dataList.Count > 0)
            {
                DateTime regTime = DateTime.Now;


                foreach (dynamic itemDataList in dataList)
                {
                    regTime = Convert.ToDateTime(itemDataList.regTime);
                    var XLable = Convert.ToDateTime(itemDataList.dayDate).ToString("yy-MM-dd");
                    charItemList[XLable] = new charDataList(XLable);
                    Dictionary <string, charDataItemList> charDataItem = new Dictionary <string, charDataItemList>();
                    #region 系列增值
                    if (dataType.Contains("loginNum"))
                    {
                        charDataItem[columnList["loginNum"]] = new charDataItemList()
                        {
                            Values = itemDataList.loginNum, series = columnList["loginNum"]
                        };
                    }
                    if (dataType.Contains("userNum"))
                    {
                        charDataItem[columnList["userNum"]] = new charDataItemList()
                        {
                            Values = itemDataList.userNum, series = columnList["userNum"]
                        };
                    }
                    if (dataType.Contains("saleNum"))
                    {
                        charDataItem[columnList["saleNum"]] = new charDataItemList()
                        {
                            Values = itemDataList.saleNum, series = columnList["saleNum"]
                        };
                    }
                    if (dataType.Contains("saleMoney"))
                    {
                        charDataItem[columnList["saleMoney"]] = new charDataItemList()
                        {
                            Values = itemDataList.saleMoney, series = columnList["saleMoney"]
                        };
                    }
                    if (dataType.Contains("smsNum"))
                    {
                        charDataItem[columnList["smsNum"]] = new charDataItemList()
                        {
                            Values = itemDataList.smsNum, series = columnList["smsNum"]
                        };
                    }
                    if (dataType.Contains("goodsNum"))
                    {
                        charDataItem[columnList["goodsNum"]] = new charDataItemList()
                        {
                            Values = itemDataList.goodsNum, series = columnList["goodsNum"]
                        };
                    }
                    if (dataType.Contains("orderMoney"))
                    {
                        charDataItem[columnList["orderMoney"]] = new charDataItemList()
                        {
                            Values = itemDataList.orderMoney, series = columnList["orderMoney"]
                        };
                    }
                    if (dataType.Contains("acc_Rep"))
                    {
                        charDataItem[columnList["acc_Rep"]] = new charDataItemList()
                        {
                            Values = itemDataList.acc_Rep, series = columnList["acc_Rep"]
                        };
                    }
                    if (dataType.Contains("moodNum"))
                    {
                        charDataItem[columnList["moodNum"]] = new charDataItemList()
                        {
                            Values = itemDataList.moodNum, series = columnList["moodNum"]
                        };
                    }
                    #endregion

                    charItemList[XLable].ItemList = charDataItem;
                }
                //chartModel.DataList = charItemList;
                startTime = startTime > regTime ? startTime : regTime;
            }


            while (startTime <= endTime)
            {
                var XLable = startTime.ToString("yy-MM-dd");

                if (charItemList.ContainsKey(XLable))
                {
                    chartModel.DataList[XLable] = charItemList[XLable];
                }
                else
                {
                    chartModel.DataList[XLable] = new charDataList(XLable);

                    #region 系列增值

                    foreach (string itemType in dataType)
                    {
                        chartModel.DataList[XLable].ItemList[columnList[itemType]] = new charDataItemList()
                        {
                            Values = 0, series = columnList[itemType]
                        };
                    }
                    #endregion
                }
                chartModel.DataList[XLable].weekend = (int)startTime.DayOfWeek;
                startTime = startTime.AddDays(1);
            }


            return(chartModel);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 得到 单个店铺的销售信息
        /// </summary>
        /// <param name="accid"></param>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <param name="dataType"></param>
        /// <returns></returns>
        public static Model.chartDataModel GetSaleChartData(int accid, DateTime startTime, DateTime endTime, int dataType)
        {
            List <dynamic>     list     = new List <dynamic>();
            List <DapperWhere> sqlWhere = new List <DapperWhere>();

            sqlWhere.Add(new DapperWhere("statTime", startTime, "dayDate>=@statTime"));
            sqlWhere.Add(new DapperWhere("endTime", endTime, "dayDate<=@endTime"));
            sqlWhere.Add(new DapperWhere("accountid", accid));

            string columnName = "id,dayDate,saleNum,memSaleNum,retailSaleNum";


            list = BLL.Base.SysRpt_ShopDayInfoBaseBLL.GetList <dynamic>(0, columnName, sqlWhere, "dayDate desc");

            chartDataModel chartModel = new chartDataModel();

            chartModel.captionTitle = "每日销售统计";

            DateTime forDateTime = startTime;

            //得到所有X轴
            while (forDateTime <= endTime)
            {
                if (forDateTime < DateTime.Now.Date)
                {
                    #region 得到所有X轴
                    charDataList charItemList = new charDataList();

                    charItemList.XLable  = forDateTime.ToString("MM-dd");
                    charItemList.weekend = (int)forDateTime.DayOfWeek;

                    if (dataType == 1 || dataType == 4)//总销售
                    {
                        charItemList.ItemList["总销售"] = new charDataItemList(0)
                        {
                            series = "总销售"
                        };
                    }
                    if (dataType == 2 || dataType == 4)//会员
                    {
                        charItemList.ItemList["会员销售"] = new charDataItemList(0)
                        {
                            series = "会员销售"
                        };
                    }
                    if (dataType == 3 || dataType == 4)//零售
                    {
                        charItemList.ItemList["零售销售"] = new charDataItemList(0)
                        {
                            series = "零售销售"
                        };
                    }
                    chartModel.DataList[charItemList.XLable] = charItemList;
                    #endregion
                }
                forDateTime = forDateTime.AddDays(1);
            }



            foreach (dynamic item in list)
            {
                #region 给X轴增值
                charDataList charItemList = new charDataList();

                var XLable = Convert.ToDateTime(item.dayDate).ToString("MM-dd");


                if (dataType == 1 || dataType == 4)//总销售
                {
                    chartModel.DataList[XLable].ItemList["总销售"].Values = item.saleNum;
                }
                if (dataType == 2 || dataType == 4)//会员
                {
                    chartModel.DataList[XLable].ItemList["会员销售"].Values = item.memSaleNum;
                }
                if (dataType == 3 || dataType == 4)//零售
                {
                    chartModel.DataList[XLable].ItemList["零售销售"].Values = item.retailSaleNum;
                }
                #endregion
            }
            return(chartModel);
        }