protected void btnAddSales_Click(object sender, EventArgs e)
        {
            DailySalesData dailySale = new DailySalesData();

            dailySale.DateTime          = DateTime.Now.ToString();
            dailySale.DaySales          = txtDaySales.Text;
            dailySale.MonthlySales      = txtMonthlySales.Text;
            dailySale.NetSales          = txtNetSales.Text;
            dailySale.Refunds           = txtRefunds.Text;
            dailySale.Tier1             = txtTier1.Text;
            dailySale.Tier2             = txtTier2.Text;
            dailySale.Tier3             = txtTier3.Text;
            dailySale.Tier4             = txtTier4.Text;
            dailySale.Bonus             = txtBonus.Text;
            dailySale.MonthlyDrawsTaken = txtMonthlyDrawsTaken.Text;
            dailySale.QBTotalPay        = txtQBTotalPay.Text;
            dailySale.UserID            = Convert.ToInt32(Request.Cookies["UserID"].Value);
            dailySale.CashBonus         = txtCashBonus.Text;
            dailySale.MonthlyOfficeRent = txtMonthlyOfficeRent.Text;
            dailySale.ActualPayoutTotal = txtActualPayout.Text;
            bool isSalesAdded = dailySalesHelper.AddSales(dailySale);

            if (isSalesAdded)
            {
                Response.Write("<script>alert('Sales record added Successfully.');</script>");
            }
            else
            {
                Response.Write("<script>alert('Some error occured.');</script>");
            }
        }
Exemple #2
0
    public static void SaveDailyData(string date, DailySalesData newinfo)
    {
        string year        = date.Substring(0, 4);
        string month       = date.Substring(4, 2);
        string day         = date.Substring(6, 2);
        string persistPath = string.Format("{0}/{1}/{2}/{3}/{4}.txt", Application.persistentDataPath, "HistoryData", year, month, day);

        Utility.CreateDir(persistPath);
        string info = JsonUtility.ToJson(newinfo);

        File.WriteAllText(persistPath, info);
    }
    public int GetLastDayMonthEnterCustomerNumber(string date, int storeID)
    {
        DailySalesData lastDayData = LoadLastDailyData(date);

        if (lastDayData == null)
        {
            return(0);
        }
        StoreDailyInfo storeinfo = lastDayData.GetStoreDailyInfo(storeID);

        return(storeinfo.MonthEnterCustomerNubmer);
    }
        private void dailyReport()
        {
            DailySalesData   reportDetails = new DailySalesData();
            DataTable        dtTable       = reportDetails.CompanyDetails;
            DailySalesReport Report        = new DailySalesReport();

            readCompanyDetails();
            DataRow drr = dtTable.NewRow();

            drr["CompanyName"]    = companyName;
            drr["CompanyDetails"] = companyDetails;
            dtTable.Rows.Add(drr);
            Report.Database.Tables["CompanyDetails"].SetDataSource((DataTable)dtTable);
            addList();
            DataTable dataTable = reportDetails.DailySaleData;

            for (int i = 0; i < saleDateList.Count; i++)
            {
                DataRow  drow  = dataTable.NewRow();
                string[] fDate = Regex.Split(fromDate.ToString(), " ");
                drow["DateFrom"] = fDate[0];
                string[] tDate = Regex.Split(toDate.ToString(), " ");
                drow["DateTo"]     = tDate[0];
                drow["BillNoFrom"] = bnoFromList[i];
                drow["BillNoTo"]   = bnoToList[i];
                string[] sDate = Regex.Split(saleDateList[i], " ");
                drow["SaleDate"]    = sDate[0];
                drow["GrossValue"]  = totalPriceList[i];
                drow["Discount"]    = discountList[i];
                drow["Gst"]         = netGstList[i];
                drow["SalesReturn"] = salesReturnList[i];
                drow["GrandTotal"]  = grandTotalList[i];
                drow["Credit"]      = creditList[i];
                drow["CashPaid"]    = cashPaidList[i];
                dataTable.Rows.Add(drow);
            }
            DataRow droww = dataTable.NewRow();

            droww["TotalGross"]       = totalPriceList.Sum();
            droww["TotalDiscount"]    = discountList.Sum();
            droww["TotalGst"]         = netGstList.Sum();
            droww["TotalSalesReturn"] = salesReturnList.Sum();
            droww["TotalGrand"]       = grandTotalList.Sum();
            droww["TotalCredit"]      = creditList.Sum();
            droww["TotalCashPaid"]    = cashPaidList.Sum();
            dataTable.Rows.Add(droww);
            Report.Database.Tables["DailySaleData"].SetDataSource((DataTable)dataTable);
            sales_Reporter_Viewer.ViewerCore.ReportSource = Report;
            Report.Refresh();
        }
Exemple #5
0
    public static DailySalesData LoadDailyData(string date)
    {
        string year        = date.Substring(0, 4);
        string month       = date.Substring(4, 2);
        string day         = date.Substring(6, 2);
        string persistPath = string.Format("{0}/{1}/{2}/{3}/{4}.txt", Application.persistentDataPath, "HistoryData", year, month, day);

        if (File.Exists(persistPath))
        {
            string         info      = File.ReadAllText(persistPath);
            DailySalesData dailydata = JsonUtility.FromJson <DailySalesData>(info);
            return(dailydata);
        }
        else
        {
            return(null);
        }
    }
 /// <summary>
 /// 加载每日数据
 /// </summary>
 /// <param name="date"></param>
 /// <returns></returns>
 private DailySalesData LoadDailyData(string date)
 {
     if (!allDailydataSaleDataDict.ContainsKey(date))
     {
         bool           isCreate       = false;
         DailySalesData dailySalesData = ConfigDataManager.LoadDailyData(date);
         if (dailySalesData == null)
         {
             dailySalesData      = new DailySalesData();
             dailySalesData.Date = date;
             isCreate            = true;
         }
         allDailydataSaleDataDict[date] = dailySalesData;
         if (isCreate)
         {
             CalculateData(date);
             SaveChange(date);
         }
     }
     return(allDailydataSaleDataDict[date]);
 }
Exemple #7
0
        public bool AddSales(DailySalesData dailySales)
        {
            bool isSalesAdded = false;

            using (uow = new UnitOfWork.UnitOfWork())
            {
                try
                {
                    DailySalesRecord dailySalesdb = new DailySalesRecord();
                    dailySalesdb.DateTime          = DateTime.Now.ToString();
                    dailySalesdb.DaySales          = dailySales.DaySales;
                    dailySalesdb.MonthlySales      = dailySales.MonthlySales;
                    dailySalesdb.NetSales          = dailySales.NetSales;
                    dailySalesdb.Refunds           = dailySales.Refunds;
                    dailySalesdb.Tier1             = dailySales.Tier1;
                    dailySalesdb.Tier2             = dailySales.Tier2;
                    dailySalesdb.Tier3             = dailySales.Tier3;
                    dailySalesdb.Tier4             = dailySales.Tier4;
                    dailySalesdb.UserID            = dailySales.UserID;
                    dailySalesdb.MonthlyDrawsTaken = dailySales.MonthlyDrawsTaken;
                    dailySalesdb.QBTotalPay        = dailySales.QBTotalPay;
                    dailySalesdb.Bonus             = dailySales.Bonus;
                    dailySalesdb.ActualPayoutTotal = dailySales.ActualPayoutTotal;
                    dailySalesdb.CashBonus         = dailySales.CashBonus;
                    dailySalesdb.MonthlyOfficeRent = dailySales.MonthlyOfficeRent;
                    uow.DailySalesRecordRepository.Insert(dailySalesdb);
                    uow.Save();
                    isSalesAdded = true;
                }
                catch
                {
                    isSalesAdded = false;
                }
            }

            return(isSalesAdded);
        }
    /// <summary>
    /// 根据输入的数据计算每日销售信息
    /// 门店销售信息,月销售信息
    /// </summary>
    /// <param name="date"></param>
    public void CalculateData(string date)
    {
        string         day         = date.Substring(6, 2);
        DailySalesData thisDayData = LoadDailyData(date);

        if (int.Parse(day) == 1)
        {
            thisDayData.Reset();
        }
        else
        {
            DailySalesData lastDayData = LoadLastDailyData(date);
            thisDayData.TotalSales          = 0;
            thisDayData.MonthSaleDataToDate = lastDayData.MonthSaleDataToDate.Clone();
            thisDayData.ProductTransactionInfos.Clear();
            #region storeDailyDate
            for (int i = 0; i < lastDayData.AllStoreDailySaleData.Count; i++)
            {
                StoreDailyInfo lastStoreDayInfo  = lastDayData.AllStoreDailySaleData[i];
                StoreDailyInfo todaystoreDayinfo = thisDayData.GetStoreDailyInfo(lastStoreDayInfo.StoreID);
                todaystoreDayinfo.MonthEnterCustomerNubmer = lastStoreDayInfo.MonthEnterCustomerNubmer + todaystoreDayinfo.TodayEnterCustomerNumber;
                todaystoreDayinfo.MonthTransaction         = lastStoreDayInfo.MonthTransaction;
                todaystoreDayinfo.MonthTotalSales          = lastStoreDayInfo.MonthTotalSales;
                todaystoreDayinfo.OldCustomerCount         = lastStoreDayInfo.OldCustomerCount;;
                todaystoreDayinfo.OldCustomerSales         = lastStoreDayInfo.OldCustomerSales;
                todaystoreDayinfo.NewCustomerCount         = lastStoreDayInfo.NewCustomerCount;
                todaystoreDayinfo.NewCustomerSales         = lastStoreDayInfo.NewCustomerSales;
                todaystoreDayinfo.CompletionRate           = lastStoreDayInfo.CompletionRate;
            }
            for (int i = 0; i < thisDayData.AllStoreDailySaleData.Count; i++)
            {
                StoreDailyInfo todayStoreDayInfo = thisDayData.AllStoreDailySaleData[i];
                todayStoreDayInfo.TodaySales      = 0;
                todayStoreDayInfo.TodyTransaction = 0;
                todayStoreDayInfo.TodayProductTransactions.Clear();
            }
            #endregion
            #region RankingInfo
            for (int i = 0; i < lastDayData.AllSalesPersonRankInfos.Count; i++)
            {
                SalesPersonRankInfo lastRankingInfo  = lastDayData.AllSalesPersonRankInfos[i];
                SalesPersonRankInfo todayRankingInfo = thisDayData.GetSalePersonRankInfo(lastRankingInfo.SalePersonID);
                if (todayRankingInfo == null)
                {
                    continue;
                }
                todayRankingInfo.Ranking          = lastRankingInfo.Ranking;
                todayRankingInfo.PerformanceSales = lastRankingInfo.PerformanceSales;
                todayRankingInfo.CompleteRate     = lastRankingInfo.CompleteRate;
            }
            for (int i = 0; i < thisDayData.AllSalesPersonRankInfos.Count; i++)
            {
                SalesPersonRankInfo todayRankinfo   = thisDayData.AllSalesPersonRankInfos[i];
                SalesPersonRankInfo lastRankingInfo = lastDayData.GetSalePersonRankInfo(todayRankinfo.SalePersonID);
                todayRankinfo.Ranking          = lastRankingInfo.Ranking;
                todayRankinfo.PerformanceSales = lastRankingInfo.PerformanceSales;
                todayRankinfo.CompleteRate     = lastRankingInfo.CompleteRate;
            }
            #endregion
        }
        for (int i = 0; i < thisDayData.AllSingleSalesData.Count; i++)
        {
            SingleSalesData singleSaleData = thisDayData.AllSingleSalesData[i];
            thisDayData.TotalSales += singleSaleData.TotalPrice;
            ProductTransactionInfo trans = thisDayData.GetTransactionInfo(singleSaleData.ProductID, singleSaleData.ProductName);
            trans.TransactionCount += singleSaleData.SaleCount;
            #region 计算门店每日数据
            StoreDailyInfo storeDayInfo = thisDayData.GetStoreDailyInfo(singleSaleData.StoreID);
            if (singleSaleData.TransactionPercent > 0)
            {
                storeDayInfo.TodyTransaction += 1;
            }
            if (singleSaleData.TransactionPercent > 0)
            {
                storeDayInfo.MonthTransaction += 1;
            }
            storeDayInfo.TodaySales += singleSaleData.TotalPrice;
            ProductTransactionInfo transaction = storeDayInfo.GetTransactionInfo(singleSaleData.ProductID, singleSaleData.ProductName);
            transaction.TransactionCount += singleSaleData.SaleCount;
            storeDayInfo.MonthTotalSales += singleSaleData.TotalPrice;
            storeDayInfo.CompletionRate   = storeDayInfo.MonthTotalSales / storeDayInfo.TargetSales;
            if (singleSaleData.IsNewCustomer)
            {
                if (singleSaleData.TransactionPercent > 0)
                {
                    storeDayInfo.NewCustomerCount += 1;
                }
                storeDayInfo.NewCustomerSales += singleSaleData.TotalPrice;
            }
            else
            {
                if (singleSaleData.TransactionPercent > 0)
                {
                    storeDayInfo.OldCustomerCount += 1;
                }
                storeDayInfo.OldCustomerSales += singleSaleData.TotalPrice;
            }
            #endregion
            #region 计算本月数据
            thisDayData.MonthSaleDataToDate.TotalSales += singleSaleData.TotalPrice;
            if (singleSaleData.IsNewCustomer)
            {
                thisDayData.MonthSaleDataToDate.NewCustomerTransactions += (1 * singleSaleData.TransactionPercent);
                thisDayData.MonthSaleDataToDate.NewCustomerSales        += singleSaleData.TotalPrice;
            }
            else
            {
                thisDayData.MonthSaleDataToDate.OldCustomerTransactions += (1 * singleSaleData.TransactionPercent);
                thisDayData.MonthSaleDataToDate.OldCustomerSales        += singleSaleData.TotalPrice;
            }
            #endregion
            #region
            int salesPersonId = SalesDataSystem.SystemDatas.SalesPersonData.GetSalesPersonIdByName(singleSaleData.SalesPerson1);
            SalesPersonRankInfo salesPersonRankingInfo = thisDayData.GetSalePersonRankInfo(salesPersonId);
            salesPersonRankingInfo.PerformanceSales += singleSaleData.TotalPrice;
            #endregion
        }
        for (int i = 0; i < thisDayData.AllStoreDailySaleData.Count; i++)
        {
            StoreDailyInfo todayStoreDayInfo = thisDayData.AllStoreDailySaleData[i];
            todayStoreDayInfo.CompletionRate = todayStoreDayInfo.MonthTotalSales / todayStoreDayInfo.TargetSales;
        }
        thisDayData.AllSalesPersonRankInfos.Sort((a, b) =>
        {
            if (a.PerformanceSales > b.PerformanceSales)
            {
                return(-1);
            }
            else if (a.PerformanceSales == b.PerformanceSales)
            {
                return(0);
            }
            else
            {
                return(1);
            }
        });
        for (int i = 0; i < thisDayData.AllSalesPersonRankInfos.Count; i++)
        {
            SalesPersonRankInfo rankinginfo = thisDayData.AllSalesPersonRankInfos[i];
            rankinginfo.Ranking      = i + 1;
            rankinginfo.CompleteRate = rankinginfo.PerformanceSales / rankinginfo.TargetSales;
        }
    }
    public void ExportData(string date)
    {
        DailySalesData dailydata = LoadDailyData(date);

        ConfigDataManager.ExportDailyData(date, dailydata);
    }
Exemple #10
0
    /// <summary>
    /// 格式化销售产品数据
    /// </summary>
    /// <param name="newinfo"></param>
    /// <returns></returns>
    private static string GetMonthProductTransactionInfo(DailySalesData newinfo)
    {
        string productTransactionInfo = string.Empty;
        Dictionary <string, string> productTransactionDict = new Dictionary <string, string>();

        for (int i = 0; i < newinfo.ProductTransactionInfos.Count; i++)
        {
            ProductTransactionInfo trans       = newinfo.ProductTransactionInfos[i];
            eProductType           productType = SalesDataSystem.SystemDatas.ProductSysData.GetProductTypeByID(trans.ProductId);
            string exportName   = SalesDataSystem.SystemDatas.ProductSysData.GetProductExportNameByID(trans.ProductId);
            string exportSuffix = SalesDataSystem.SystemDatas.ProductSysData.GetProductExportSuffixByID(trans.ProductId);
            string key          = null;
            string addValue     = null;
            switch (productType)
            {
            case eProductType.Classic:
                key      = "经典款:";
                addValue = string.Format("{0} * {1}{2}、", exportName, trans.TransactionCount, exportSuffix);
                break;

            case eProductType.Glory:
                key      = "荣耀款:";
                addValue = string.Format("{0} * {1}{2}、", exportName, trans.TransactionCount, exportSuffix);
                break;

            case eProductType.Exclusive:
                key      = "尊享款:";
                addValue = string.Format("{0} * {1}{2}、", exportName, trans.TransactionCount, exportSuffix);
                break;

            case eProductType.DrySwallow:
                key      = "干燕盏:";
                addValue = string.Format("{0} * {1}{2}、", exportName, trans.TransactionCount, exportSuffix);
                break;

            case eProductType.Single:
                key      = trans.ProductName + ":";
                addValue = string.Format("{0} * {1}{2}、", exportName, trans.TransactionCount, exportSuffix);
                break;

            case eProductType.None:
                break;

            case eProductType.GuanYan:
                key      = "冰糖官燕:";
                addValue = string.Format("{0} * {1}{2}、", exportName, trans.TransactionCount, exportSuffix);
                break;

            default:
                break;
            }
            if (!string.IsNullOrEmpty(key))
            {
                if (!productTransactionDict.ContainsKey(key))
                {
                    productTransactionDict[key] = "";
                }
                productTransactionDict[key] += (addValue);
            }
        }

        System.Text.StringBuilder strb = new System.Text.StringBuilder(100);
        foreach (var p in productTransactionDict)
        {
            strb.Append(p.Key);
            strb.Append(p.Value);
            strb.Append(Environment.NewLine);
        }
        productTransactionInfo = strb.ToString();
        return(productTransactionInfo);
    }
Exemple #11
0
    public static void ExportDailyData(string date, DailySalesData newinfo)
    {
        string year        = date.Substring(0, 4);
        string month       = date.Substring(4, 2);
        string day         = date.Substring(6, 2);
        string persistPath = string.Format("{0}/{1}/{2}/{3}/{4}ExportData.txt", Application.persistentDataPath, "ExportData", year, month, day);
        string folder      = Path.GetDirectoryName(persistPath);

        Utility.CreateDir(persistPath);
        string         DailySalesDataMonthPart                = (Resources.Load("Configs/DailySalesDataMonthPart") as TextAsset).text;
        string         DailySalesDataStorePart                = (Resources.Load("Configs/DailySalesDataStorePart") as TextAsset).text;
        string         DailySalesDataCustomerServicePart      = (Resources.Load("Configs/DailySalesDataCustomerServicePart") as TextAsset).text;
        string         DailySalesDataDejiStorePart            = (Resources.Load("Configs/DailySalesDataDejiStorePart") as TextAsset).text;
        string         DailySalesDataCustomerServiceStorePart = (Resources.Load("Configs/DailySalesDataCustomersServiceStorePart") as TextAsset).text;
        string         productTransactionInfo = GetMonthProductTransactionInfo(newinfo);
        MonthSalesData thisMonthData          = newinfo.MonthSaleDataToDate;

        System.Text.StringBuilder strb = new System.Text.StringBuilder(500);
        string exportInfo      = null;
        string exportmonthInfo = string.Format(DailySalesDataMonthPart, year, month, day, newinfo.TotalSales, productTransactionInfo,
                                               thisMonthData.TotalSales, thisMonthData.NewCustomerTransactions, thisMonthData.NewCustomerSales, thisMonthData.OldCustomerTransactions,
                                               thisMonthData.OldCustomerSales);

        strb.Append(exportmonthInfo);

        int index = 1;

        #region 一般的店面处理
        for (int i = 0; i < newinfo.AllStoreDailySaleData.Count; i++)
        {
            StoreDailyInfo sdi = newinfo.AllStoreDailySaleData[i];
            if (sdi.StoreName == "德基广场店" || sdi.StoreName == "德基BHG店" ||
                sdi.StoreName == "广播进线" || sdi.StoreName == "售后维护")
            {
                continue;
            }
            string storeproductInfo     = GetStoreProductTransactionInfo(sdi);
            string exportStoreDailyInfo = string.Format(DailySalesDataStorePart, index, sdi.StoreName, month, sdi.LeastSales / 10000f, sdi.TargetSales / 10000f,
                                                        year, month, day, sdi.TodayEnterCustomerNumber, sdi.MonthEnterCustomerNubmer, sdi.TodyTransaction, sdi.MonthTransaction, sdi.TodaySales, storeproductInfo,
                                                        sdi.MonthTotalSales, (sdi.CompletionRate * 100).ToString("F2"), sdi.OldCustomerSales, sdi.OldCustomerCount,
                                                        sdi.NewCustomerSales, sdi.NewCustomerCount);
            strb.Append(exportStoreDailyInfo);
            index++;
        }
        #endregion

        #region 德基广场店处理
        int            dejistoreId          = SalesDataSystem.SystemDatas.StoreSysData.GetStoreIDByName("德基广场店");
        StoreDailyInfo dejiStoreInfo        = newinfo.GetStoreDailyInfo(dejistoreId);
        string         dejiStoreProductInfo = GetStoreProductTransactionInfo(dejiStoreInfo);
        int            dejiBHGstoreId       = SalesDataSystem.SystemDatas.StoreSysData.GetStoreIDByName("德基BHG店");
        StoreDailyInfo dejiBhgStoreInfo     = newinfo.GetStoreDailyInfo(dejiBHGstoreId);
        string         dejiBhgProductInfo   = GetStoreProductTransactionInfo(dejiBhgStoreInfo);
        string         dejiStoreDailyInfo   = string.Format(DailySalesDataDejiStorePart, index, month, dejiStoreInfo.LeastSales / 10000f, dejiStoreInfo.TargetSales / 10000f,
                                                            year, month, day, (dejiStoreInfo.TodayEnterCustomerNumber + dejiBhgStoreInfo.TodayEnterCustomerNumber), (dejiBhgStoreInfo.MonthEnterCustomerNubmer + dejiBhgStoreInfo.MonthEnterCustomerNubmer), (dejiStoreInfo.TodyTransaction + dejiBhgStoreInfo.TodyTransaction), (dejiStoreInfo.MonthTransaction + dejiBhgStoreInfo.MonthTransaction)
                                                            , (dejiStoreInfo.TodaySales + dejiBhgStoreInfo.TodaySales), dejiStoreProductInfo, dejiBhgProductInfo, (dejiStoreInfo.MonthTotalSales + dejiBhgStoreInfo.MonthTotalSales), ((dejiStoreInfo.CompletionRate + dejiBhgStoreInfo.CompletionRate) * 100).ToString("F2"), (dejiStoreInfo.OldCustomerSales), (dejiStoreInfo.OldCustomerCount),
                                                            (dejiStoreInfo.NewCustomerSales), (dejiStoreInfo.NewCustomerCount), dejiBhgStoreInfo.MonthTotalSales, (dejiBhgStoreInfo.NewCustomerCount + dejiBhgStoreInfo.OldCustomerCount));
        strb.Append(dejiStoreDailyInfo);
        index++;
        #endregion
        strb.Append(Environment.NewLine);
        #region 客服部处理
        int            broadcastStoreId         = SalesDataSystem.SystemDatas.StoreSysData.GetStoreIDByName("广播进线");
        StoreDailyInfo broadCastStoreInfo       = newinfo.GetStoreDailyInfo(broadcastStoreId);
        string         broadCastProductInfo     = GetStoreProductTransactionInfo(broadCastStoreInfo);
        int            afterSaleStoreId         = SalesDataSystem.SystemDatas.StoreSysData.GetStoreIDByName("售后维护");
        StoreDailyInfo afterSaleStoreInfo       = newinfo.GetStoreDailyInfo(afterSaleStoreId);
        string         afterSaleProductInfo     = GetStoreProductTransactionInfo(afterSaleStoreInfo);
        string         customerServiceDailyInfo = string.Format(DailySalesDataCustomerServiceStorePart, index, month, broadCastStoreInfo.LeastSales / 10000f, broadCastStoreInfo.TargetSales / 10000f,
                                                                year, month, day, broadCastStoreInfo.TodyTransaction, broadCastStoreInfo.TodaySales, broadCastProductInfo, broadCastStoreInfo.MonthTotalSales,
                                                                afterSaleStoreInfo.TodyTransaction, afterSaleStoreInfo.TodaySales, afterSaleProductInfo, afterSaleStoreInfo.MonthTotalSales,
                                                                (broadCastStoreInfo.MonthTotalSales + afterSaleStoreInfo.MonthTotalSales), (broadCastStoreInfo.NewCustomerSales + afterSaleStoreInfo.NewCustomerSales), (broadCastStoreInfo.NewCustomerCount + afterSaleStoreInfo.NewCustomerCount),
                                                                (broadCastStoreInfo.OldCustomerSales + afterSaleStoreInfo.OldCustomerSales), (broadCastStoreInfo.OldCustomerCount + afterSaleStoreInfo.OldCustomerCount), (((broadCastStoreInfo.CompletionRate + afterSaleStoreInfo.CompletionRate) * 100).ToString("F2")));
        strb.Append(customerServiceDailyInfo);
        #endregion

        exportInfo = strb.ToString();
        File.WriteAllText(persistPath, exportInfo);

        string rankingPersistPath          = string.Format("{0}/{1}/{2}/{3}/{4}ExportData_Ranking.txt", Application.persistentDataPath, "ExportData", year, month, day);
        System.Text.StringBuilder rankstrb = new System.Text.StringBuilder(500);
        string rankingheadtitle            = "门店,姓名,保底(万),目标(万),排名,业绩(元),完成率(100%)" + Environment.NewLine;
        rankstrb.Append(rankingheadtitle);
        string rankinfoformat = "{0},{1},{2},{3},{4},{5},{6}%" + Environment.NewLine;
        for (int i = 0; i < newinfo.AllSalesPersonRankInfos.Count; i++)
        {
            SalesPersonRankInfo rankinginfo = newinfo.AllSalesPersonRankInfos[i];
            string singleinfo = string.Format(rankinfoformat, rankinginfo.StoreName, rankinginfo.SalesPsersonName, rankinginfo.LeastSales / 10000,
                                              rankinginfo.TargetSales / 10000, rankinginfo.Ranking, rankinginfo.PerformanceSales, (int)(rankinginfo.CompleteRate * 100));
            rankstrb.Append(singleinfo);
        }
        exportInfo = rankstrb.ToString();
        File.WriteAllText(rankingPersistPath, exportInfo);
        OpenFolder(folder);
    }