Esempio n. 1
0
        /// <summary>
        /// 创建月订单报表
        /// </summary>
        /// <param name="monthnum"></param>
        public void CreateMonthReport(int monthnum, int year)
        {
            //foreach (var item in ProductStatisticServerOptSet)
            //{
            //    var result = item.CreateMonthReport(monthnum, year);
            //}
            //foreach (var item in OrderStatisticServerOptSet)
            //{
            //    var result = item.CreateMonthReport(monthnum, year);
            //}
            //foreach (var item in DistrictStatisticServerOptSet)
            //{
            //    var result = item.CreateDistrictMonthReport(monthnum, year);
            //}
            //foreach (var item in CustomerStatisticServerOptSet)
            //{
            //    var result = item.CreateMonthReport(monthnum, year);
            //}
            #region 动态方式加载

            foreach (var item in AppServer.Instance.ConfigDictionary.Values.Where(i => i.CreateReport != false))
            {
                ProductStatisticServerCommon pcomm = new ProductStatisticServerCommon(item.Name, item.Tag);
                pcomm.CreateMonthReport(monthnum, year);
                OrderStatisticServerCommon ocomm = new OrderStatisticServerCommon(item.Name, item.Tag);
                ocomm.CreateMonthReport(monthnum, year);
                DistrictStatisticServerCommon dcomm = new DistrictStatisticServerCommon(item.Name, item.Tag);
                dcomm.CreateDistrictMonthReport(monthnum, year);
                CustomerStatisticServerCommon ccomm = new CustomerStatisticServerCommon(item.Name, item.Tag);
                ccomm.CreateMonthReport(monthnum, year);
            }
            #endregion
        }
Esempio n. 2
0
        public bool PushMonthlyReport(string[] serverNames, DateTime dateTime)
        {
            /*推送报表规则
             * 推送OrderSource对象指定的条目的推送报表
             * 推送昨天的日报表
             * 如果今天是周一,推送上周的周报表
             * 如果今天是月初,推送上月月报表
             */

            //foreach (var item in serverNames)
            //{
            //    if (item == OrderSource.CIB)//CIB与CIBAPP合并发送
            //        continue;
            //    var dt = dateTime;

            //    OrderStatisticServerOptSet.FirstOrDefault(i => i.ServerName == item)?.PushMonthReport(dt.Month, dt.Year);

            //}

            var lst = AppServer.Instance.ConfigDictionary.Where(p => serverNames.Contains(p.Key)).Select(p => p.Value);

            foreach (var item in lst)
            {
                if (item.Name == OrderSource.CIB || item.Name == OrderSource.CIBEVT)//CIB,CIBAPP,CIBEVT合并发送
                {
                    continue;
                }
                var dt = dateTime;
                OrderStatisticServerCommon ocomm = new OrderStatisticServerCommon(item.Name, item.Tag);
                ocomm.PushMonthReport(dt.Month, dt.Year);
            }

            return(true);
        }
Esempio n. 3
0
        public bool CreateYearReport(int year)
        {
            #region 动态方式加载

            try
            {
                foreach (var item in AppServer.Instance.ConfigDictionary.Values.Where(i => i.CreateReport != false))
                {
                    ProductStatisticServerCommon pcomm = new ProductStatisticServerCommon(item.Name, item.Tag);
                    pcomm.CreateYearReport(year);
                    OrderStatisticServerCommon ocomm = new OrderStatisticServerCommon(item.Name, item.Tag);
                    ocomm.CreateYearReport(year);
                    DistrictStatisticServerCommon dcomm = new DistrictStatisticServerCommon(item.Name, item.Tag);
                    dcomm.CreateDistrictYearReport(year);
                    CustomerStatisticServerCommon ccomm = new CustomerStatisticServerCommon(item.Name, item.Tag);
                    ccomm.CreateYearReport(year);
                }
                Util.Logs.Log.GetLog(nameof(StatisticServer)).Info($"{year}创建年报表任务已提交");
                return(true);
            }
            catch (Exception ex)
            {
                Util.Logs.Log.GetLog(nameof(Statistic)).Error($"历史报表{year}年生成失败。/r/n{ex.Message}");
                return(false);
            }


            #endregion
        }
Esempio n. 4
0
        /// <summary>
        /// 生成日报表
        /// </summary>
        public void CreateDailyReport(DateTime dateTime)
        {
            /*生成昨日报表
             */
            #region 静态实现


            //foreach (var item in ProductStatisticServerOptSet)
            //{
            //    var result = item.CreateDailyReport(dateTime);
            //}
            //foreach (var item in OrderStatisticServerOptSet)
            //{
            //    var result = item.CreateDailyReport(dateTime);
            //}
            //foreach (var item in DistrictStatisticServerOptSet)
            //{
            //    var result = item.CreateDistrictDailyReport(dateTime);
            //}
            #endregion
            #region 动态方式加载
            //加载所有渠道

            foreach (var item in AppServer.Instance.ConfigDictionary.Values.Where(i => i.CreateReport != false))
            {
                ProductStatisticServerCommon pcomm = new ProductStatisticServerCommon(item.Name, item.Tag);
                pcomm.CreateDailyReport(dateTime);
                OrderStatisticServerCommon ocomm = new OrderStatisticServerCommon(item.Name, item.Tag);
                ocomm.CreateDailyReport(dateTime);
                DistrictStatisticServerCommon dcomm = new DistrictStatisticServerCommon(item.Name, item.Tag);
                dcomm.CreateDistrictDailyReport(dateTime);
                CustomerStatisticServerCommon ccomm = new CustomerStatisticServerCommon(item.Name, item.Tag);
                ccomm.CreateDailyReport(dateTime);
            }
            #endregion
        }