Ejemplo n.º 1
0
        private void button1_Click(object sender, EventArgs e)
        {
            var text = this.textBox2.Text;

            if (string.IsNullOrEmpty(text))
            {
                OpenFileDialog openFileDialog = new OpenFileDialog();
                openFileDialog.ShowDialog();
                string path = openFileDialog.FileName;
                if (string.IsNullOrEmpty(path))
                {
                    MessageBox.Show("未选中路径!");
                    return;
                }
                GetExcel getExcelColumnValueClass = new GetExcel();
                var      data = getExcelColumnValueClass.GetExcelColumnValue(path, 1, new List <int>()
                {
                    1, 2, 3, 4, 5, 7, 8, 9
                });

                if (data != null && data.Count > 0)
                {
                    MessageBox.Show("成功!");
                    this.textBox2.Text = JsonConvert.SerializeObject(data);
                    return;
                }

                MessageBox.Show("失败!");
                return;
            }
            else
            {
                OpenFileDialog openFileDialog = new OpenFileDialog();
                openFileDialog.ShowDialog();
                string path = openFileDialog.FileName;
                if (string.IsNullOrEmpty(path))
                {
                    MessageBox.Show("未选中路径!");
                    return;
                }
                GetExcel getExcelColumnValueClass = new GetExcel();
                var      data = getExcelColumnValueClass.GetExcelColumnValue(path, 1, new List <int>()
                {
                    1, 2, 3, 4, 5, 7, 8, 9
                });

                var oldText = text;//老数据

                var storeInfos = JsonConvert.DeserializeObject <List <StoreInfo> >(oldText);

                foreach (var item in data)
                {
                    storeInfos.Add(item);
                }

                if (storeInfos != null && storeInfos.Count > 0)
                {
                    MessageBox.Show("成功!");
                    this.textBox2.Text = JsonConvert.SerializeObject(storeInfos);
                    return;
                }

                MessageBox.Show("失败!");
                return;
            }
        }
Ejemplo n.º 2
0
        private void button3_Click(object sender, EventArgs e)
        {
            var       data     = this.textBox2.Text;
            var       dataPath = this.textBox1.Text;
            string    nameList = "";
            DataTable table    = new DataTable();

            CSVHelper.OpenCSVFile(ref table, ref nameList, dataPath);
            GetExcel getExcel = new GetExcel();

            //导入前有值 修改不导入
            if (table.Rows != null && table.Rows.Count > 0)
            {
                var          path        = this.textBox3.Text;             //读取指定文件夹的所有xlsx;
                var          externaPath = Directory.GetDirectories(path); //最外层路径 C:\Users\Administrator\Desktop\新建文件夹
                List <Store> store       = new List <Store>();
                if (externaPath.Length > 0)
                {
                    for (int i = 0; i < externaPath.Length; i++)
                    {
                        //第二层路径 C:\Users\Administrator\Desktop\新建文件夹\1_73270
                        var newPath1 = externaPath[i];
                        //获取第二层路径下的子文件夹集合
                        var arrParentPath = Directory.GetDirectories(newPath1 + "\\");
                        //获取子文件夹集合中的第一个  C:\Users\Administrator\Desktop\新建文件夹\1_73270\1
                        var newPath3 = arrParentPath[0];
                        //获取子文件夹集合中的第二层子文件夹 C:\Users\Administrator\Desktop\新建文件夹\1_73270\1\亳州三中店
                        var arrChildPath = Directory.GetDirectories(newPath3 + "\\");

                        foreach (var item in arrChildPath)
                        {
                            var xlsxPaths = Directory.GetFiles(item, "*.xlsx", SearchOption.TopDirectoryOnly);

                            var index    = item.IndexOf("1\\");
                            var xlsxPath = item.Substring(index, item.Length - index).Replace("1\\", "");
                            store.Add(new Store()
                            {
                                StoreName = xlsxPath,
                                Path      = xlsxPaths.FirstOrDefault(),
                                Tel       = "",
                                Name      = ""
                            });
                        }
                    }
                }
                List <StoreInfo> stores = new List <StoreInfo>();
                foreach (var item in store)
                {
                    if (string.IsNullOrEmpty(item.Path))
                    {
                        continue;
                    }
                    var storeInfo = getExcel.GetExcelColumnRowValue(item.Path, 0, new List <int>()
                    {
                        2
                    }, item.StoreName);

                    stores.Add(storeInfo);
                }
                var rows    = table.Rows;
                var columns = table.Columns;
                for (int i = 0; i < rows.Count; i++)
                {
                    var list      = rows[i].ItemArray;
                    var storeName = list[3];

                    var storeInfo = stores.Where(s => s.StoreName == storeName.ToString()).FirstOrDefault();
                    if (storeInfo != null)
                    {
                        list[11] = storeInfo.Tel;
                        list[13] = "商户_" + storeInfo.Name;
                    }
                    rows[i].ItemArray = list;
                }

                CSVHelper.SaveCSV(table, dataPath);
            }
            else
            {
                List <StoreInfo> storeInfos = JsonConvert.DeserializeObject <List <StoreInfo> >(data);

                DataTable dt = new DataTable();
                dt.Columns.Add("商家门店编码", typeof(String));
                dt.Columns.Add("品牌名称", typeof(String));
                dt.Columns.Add("门店名称", typeof(String));
                dt.Columns.Add("分店名称", typeof(String));
                dt.Columns.Add("省", typeof(String));
                dt.Columns.Add("市", typeof(String));
                dt.Columns.Add("区", typeof(String));
                dt.Columns.Add("街道地址", typeof(String));
                dt.Columns.Add("地址辅助描述", typeof(String));
                dt.Columns.Add("纬度", typeof(String));
                dt.Columns.Add("经度", typeof(String));
                dt.Columns.Add("门店电话", typeof(String));
                dt.Columns.Add("经营时间", typeof(String));
                dt.Columns.Add("收款主体", typeof(String));
                dt.Columns.Add("收款商户号", typeof(String));
                dt.Columns.Add("创建人联系电话", typeof(String));
                foreach (var item in storeInfos)
                {
                    var arr = item.XY.Split(',');
                    if (arr.Length == 0)
                    {
                        arr = "0,0".Split(',');
                    }
                    dt.Rows.Add("", "", "", item.StoreName, item.Sheng, item.Shi, item.Qu, item.Address, "", arr[1], arr[0], "110", item.Time, "商户_", "", "");
                }

                CSVHelper.SaveCSV(dt, dataPath);
            }
        }