예제 #1
0
        /* Заносим данные в List<AdvertisingProductsModel> */
        private void SetStockToList(IDataRecord record)
        {
            StockModel adprModel = new StockModel();

            for (int i = 0; i < record.FieldCount; i++)
            {
                adprModel.WriteData(i, record[i]);
            }
            stockList.Add(adprModel);
        }
예제 #2
0
        /* Загрузка файла, его обработка и преобразование в List */
        private void btn_UploadFromFile_Click(object sender, EventArgs e)
        {
            prodController.GetProductsAllJOIN();

            openFileDialog1.Filter   = "Неразмеченные файлы|*.csv";
            openFileDialog1.Title    = "Выбор файла для открытия";
            openFileDialog1.FileName = "";

            bool firstRow = true;

            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                stockList.Clear();
                path = openFileDialog1.FileName;

                try
                {
                    using (TextFieldParser parser = new TextFieldParser(@path))
                    {
                        parser.TextFieldType = FieldType.Delimited;

                        parser.SetDelimiters(",");

                        string[] fields;

                        while (!parser.EndOfData)
                        {
                            //Process row
                            fields = parser.ReadFields();

                            if (!firstRow)
                            {
                                StockModel tmpObj = new StockModel();

                                tmpObj.UpdateDate       = UpdateDate;
                                tmpObj.ASIN             = fields[2];
                                tmpObj.SKU              = fields[0];
                                tmpObj.FNSKU            = fields[1];
                                tmpObj.Name             = fields[3];
                                tmpObj.FulfillableItems = int.Parse(fields[10]);
                                tmpObj.ReservedItems    = int.Parse(fields[12]);
                                tmpObj.InboundShipped   = int.Parse(fields[16]);
                                tmpObj.InboundWorking   = int.Parse(fields[15]);

                                tmpObj.MarketPlaceId = GetMarketPlaceIdByName(cb_MarketPlace.SelectedItem.ToString());
                                tmpObj.ProductId     = GetProductIdBySku(tmpObj.SKU, tmpObj.MarketPlaceId);

                                stockList.Add(tmpObj);
                            }
                            else
                            {
                                firstRow = false;
                            }
                        }
                        lb_Path.Text = path;
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Проблема при открытии файла. Убедитесь, что Вы выбрали файл с нужны расширением. Возможно, разметка файла не поддерживается программой.", "Ошибка при открытии");
                    stockList.Clear();
                }
            }
        }