Ejemplo n.º 1
0
    public void SaveOrderList(string path, List <GameManager.OrderList> orderList)
    {
        if (path.Substring(path.Length - 5) == "0.csv")
        {
            var r = new List <GameManager.OrderDataCSVList>();
            if (GetComponent <DataLoader>().checkExist("data/order/order.csv"))
            {
                var result = new List <GameManager.OrderDataCSVList>();
                {
                    using (TextReader fileReader = File.OpenText(@"data/order/order.csv"))
                    {
                        using (var csv = new CsvReader(fileReader, System.Globalization.CultureInfo.InvariantCulture))
                        {
                            csv.Configuration.HasHeaderRecord = true;
                            csv.Configuration.RegisterClassMap <GameManager.OrderDataCSVListMapper>();
                            csv.Read();
                            csv.ReadHeader();
                            while (csv.Read())
                            {
                                var record = new GameManager.OrderDataCSVList
                                {
                                    Year  = int.Parse(csv.GetField("Year")),
                                    Month = int.Parse(csv.GetField("Month")),
                                    Day   = int.Parse(csv.GetField("Day"))
                                };
                                result.Add(record);
                            }
                        }
                    }
                }
                r = result;
            }
            r.Add(new GameManager.OrderDataCSVList {
                Year = DateTime.Now.Year, Month = DateTime.Now.Month, Day = DateTime.Now.Day
            });

            using (TextWriter fileWriter = new StreamWriter(@"data/order/order.csv", false))
                using (var csv = new CsvWriter(fileWriter, System.Globalization.CultureInfo.InvariantCulture))
                {
                    csv.Configuration.HasHeaderRecord = true;
                    csv.Configuration.RegisterClassMap <GameManager.OrderDataCSVListMapper>();
                    csv.WriteRecords(r);
                }
        }

        using (TextWriter fileWriter = new StreamWriter(path, true))
            using (var csv = new CsvWriter(fileWriter, System.Globalization.CultureInfo.InvariantCulture))
            {
                csv.Configuration.HasHeaderRecord = true;
                csv.Configuration.RegisterClassMap <GameManager.OrderListMapper>();
                csv.WriteRecords(orderList);
            }
    }
Ejemplo n.º 2
0
    private int 注文データ数(GameManager.OrderDataCSVList Date)
    {
        string dir = Number.FormatDate(Date.Year, Date.Month, Date.Day);

        if (File.Exists(@"data/order/" + dir + "/0.csv"))
        {
            int cnt = 0;
            while (true)
            {
                if (!File.Exists(@"data/order/" + dir + "/" + cnt + ".csv"))
                {
                    return(cnt);
                }
                cnt++;
            }
        }
        else
        {
            return(0);
        }
    }
Ejemplo n.º 3
0
    private GameManager.OrderList 商品別注文データ取得(GameManager.OrderDataCSVList Date, int Category, string Name)
    {
        int result = 0;

        for (int i = 0; i < 注文データ数(Date); i++)
        {
            var data = 注文データ取得(Date, i);
            foreach (var record in data)
            {
                if (record.Category == Category && record.Name == Name)
                {
                    result += record.Amount;
                }
            }
        }

        var list = DataLoader.LoadList();

        list.Add(new DataLoader.List {
            Name = "割引", Category = -1
        });
        int cnt    = 0;
        int Price  = 0;
        int Number = 0;

        foreach (var record in list)
        {
            if (record.Category == Category && record.Name == Name)
            {
                Number = cnt;
                Price  = record.Price * result;
                break;
            }
            cnt++;
        }

        return(new GameManager.OrderList {
            Amount = result, Category = Category, Number = Number, Name = Name, Price = Price
        });
    }
Ejemplo n.º 4
0
    private List <GameManager.OrderList> 時間帯別注文データ取得(GameManager.OrderDataCSVList Date, int Hour)
    {
        List <GameManager.OrderList> result = new List <GameManager.OrderList>();

        for (int i = 0; i < 注文データ数(Date); i++)
        {
            var data = 注文データ取得(Date, i);
            var Time = File.GetCreationTime(@"data/order/" + Number.FormatDate(日付リスト[時間帯別売上日付番号].Year, 日付リスト[時間帯別売上日付番号].Month, 日付リスト[時間帯別売上日付番号].Day) + "/" + i.ToString() + ".csv");

            if (int.Parse(Time.ToString("HH")) == Hour)
            {
                foreach (var r in data)
                {
                    if (result.Count == 0)
                    {
                        result.Add(r);
                    }
                    else
                    {
                        bool flag = false;
                        for (int cnt = 0; cnt < result.Count; cnt++)
                        {
                            if (result[cnt].Number == r.Number)
                            {
                                result[cnt].Amount += r.Amount;
                                result[cnt].Price  += r.Price;
                                flag = true;
                                break;
                            }
                        }
                        if (!flag)
                        {
                            result.Add(r);
                        }
                    }
                }
            }
        }
        return(result);
    }
Ejemplo n.º 5
0
    private List <GameManager.OrderDataCSVList> 日付データ取得()
    {
        var r = new List <GameManager.OrderDataCSVList>();

        if (GetComponent <DataLoader>().checkExist("data/order/order.csv"))
        {
            var result = new List <GameManager.OrderDataCSVList>();
            {
                using (TextReader fileReader = File.OpenText(@"data/order/order.csv"))
                {
                    using (var csv = new CsvReader(fileReader, System.Globalization.CultureInfo.InvariantCulture))
                    {
                        csv.Configuration.HasHeaderRecord = true;
                        csv.Configuration.RegisterClassMap <GameManager.OrderDataCSVListMapper>();
                        csv.Read();
                        csv.ReadHeader();
                        while (csv.Read())
                        {
                            var record = new GameManager.OrderDataCSVList
                            {
                                Year  = int.Parse(csv.GetField("Year")),
                                Month = int.Parse(csv.GetField("Month")),
                                Day   = int.Parse(csv.GetField("Day"))
                            };

                            if (注文データ数(record) != 0)
                            {
                                result.Add(record);
                            }
                        }
                    }
                    fileReader.Close();
                }
            }
            r = result;
        }

        return(r);
    }
Ejemplo n.º 6
0
    private List <GameManager.OrderList> 注文データ取得(GameManager.OrderDataCSVList Date, int num)
    {
        string path = "data/order/" + Number.FormatDate(Date.Year, Date.Month, Date.Day) + "/" + num.ToString() + ".csv";

        return(GetComponent <DataLoader>().LoadOrderList(path));
    }