• 递归导入access数据程序|自动匹配企业分类


    递归导入access数据程序|自动匹配企业分类

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Collections;
    using System.IO;
    using System.Data.SqlClient;
    namespace DataImportFromAccess
    {
        public partial class DataImport : Projects.Utils.ManageForm
        {
            protected ArrayList al = new ArrayList();
            protected StringBuilder sbSql = new StringBuilder();
            protected int i = 0;
            protected int k = 0;
            public DataImport()
            {
                InitializeComponent();
            }
            public void InItData()
            {

            }
            public void Dirs(string path)
            {
                DirectoryInfo dis = new DirectoryInfo(path);
                FileInfo[] files = dis.GetFiles();
                foreach (FileInfo fi in files)
                {
                    i++;
                    Application.DoEvents();
                    this.label1.Text = i.ToString();
                    try
                    {
                        if (fi.FullName.ToString().ToLower().Contains("mdb"))
                        {
                            al.Add(fi.FullName.ToString());
                        }
                        else
                        {

                        }
                        // File.Delete(fi.FullName);
                    }
                    catch (Exception ex)
                    {
                        //this.richTextBox1.Text += ex.Message;.
                        MessageBox.Show(ex.Message);

                    }


                }
                if (dis.GetDirectories().Length > 0)
                {
                    for (int i = 0; i < dis.GetDirectories().Length; i++)
                    {
                        Dirs(dis.GetDirectories()[i].FullName);
                    }
                }


            }
            private void BtSelectFile_Click(object sender, EventArgs e)
            {
                //this.OpdFiles.ShowDialog();
                this.FbdFiles.ShowDialog();
                //this.OpdFiles.
            }

            private void BtImport_Click(object sender, EventArgs e)
            {

                Dirs(this.FbdFiles.SelectedPath);
                ArrayList alsql = new ArrayList();
                string tempCompanyName = "";//公司名称
                string tempCode = "";//邮    编
                string tempAdd = "";//地    址
                string tempLinkMan = "";//联 系 人
                string tempTel = "";//联系电话
                string tempMobile = "";//手  机
                string tempFax = ""; //传  真
                string tempSql = "";


                string Gid = "";
                string C_ID = "";
                string userName = "";
                string 公司名称 = "";
                string 基本信息 = "";
                string 主营产品或服务 = "";
                string 主营行业 = "";
                string 企业类型 = "";
                string 经营模式 = "";
                string 法人代表负责人 = "";
                string 公司注册地 = "";
                string 注册资金 = "";
                string 员工人数 = "";
                string 公司成立时间 = "";
                string 年营业额 = "";
                string 主要经营地点 = "";
                string 主要市场 = "";
                string 经营品牌 = "";
                string 主要客户 = "";
                string 管理体系认证 = "";
                string 开户银行 = "";
                string 银行帐号 = "";
                string 是否提供OEM代加工 = "";
                string 研发部门人数 = "";
                string 厂房面积 = "";
                string 质量控制 = "";
                string 月产量 = "";
                string 联系人 = "";
                string 性别 = "";
                string 部门 = "";
                string 电话 = "";
                string 移动电话 = "";
                string 传真 = "";
                string 地址 = "";
                string 邮编 = "";
                string 邮箱 = "";
                string 公司主页 = "";
                string 信用等级参考 = "";
                string 年进口额 = "";
                string 年出口额 = "";
                string 诚信 = "";
                string Fid = "";
                string Sid = "";
                string Tid = "";
                string Province = "";
                string City = "";
                string Area = "";


                /*    
                公司名称
                公司简介
                主营产品或服务
                主营行业:
                企业类型:
                经营模式
                法人代表
                注册地点
                注册资金
                成立时间
                年营业额
                主要市场
                主要客户群
                管理体系认证
                地址
                研发人数
                OEM服务
                厂房面积
                质量控制
                月产量
                联系人
                电话
                移动电话
                传真
                邮编
                邮箱
                网址
                年出口额
                年进口额
                */
                int l = 0;
                foreach (string str in al)
                {
                    try
                    {
                        //this.richTextBox1.Text+=l.ToString();
                        DataTable dt = this.Db.GetTable(string.Format("select replace(replace(replace(cast(公司名称 as varchar(600)),char(10),''),char(13),''),char(9),'') 公司名称, replace(replace(replace(cast(公司简介 as varchar(600)),char(10),''),char(13),''),char(9),'') 公司简介,replace(replace(replace(cast(主营产品或服务 as varchar(600)),char(10),''),char(13),''),char(9),'') 主营产品或服务,[主营行业:],[企业类型:],replace(replace(replace(cast(经营模式 as varchar(600)),char(10),''),char(13),''),char(9),'') 经营模式,法人代表, 注册地点,注册资金,成立时间,年营业额,主要市场,主要客户群,管理体系认证,地址,研发人数,case cast(OEM服务 as varchar(80)) when '提供' then '1' else '0' end as OEM服务 , 厂房面积,质量控制,月产量,联系人,电话,移动电话,传真,邮编,邮箱,网址,年出口额,年进口额 from openrowset('Microsoft.Jet.OLEDB.4.0','{0}';'admin';'',Content)", str));
                        if (dt != null)
                        {
                            for (int i = 0; i < dt.Rows.Count; i++)
                            {
                                DataRow dr = dt.Rows[i];
                                Gid = "";
                                C_ID = "";
                                k++;
                                int model = 500000;
                                userName = (model + k).ToString();
                                公司名称 = Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ", "");
                                基本信息 = Convert.ToString(dr["公司简介"]).Replace("'", "''").Replace(" ", "");
                                主营产品或服务 = Convert.ToString(dr["主营产品或服务"]).Replace("'", "''").Replace(" ", "");
                                主营行业 = Convert.ToString(dr["主营行业:"]).Replace("'", "''").Replace(" ", "");
                                企业类型 = Convert.ToString(dr["企业类型:"]).Replace("'", "''").Replace(" ", "");
                                经营模式 = Convert.ToString(dr["经营模式"]).Replace("'", "''").Replace(" ", "");
                                法人代表负责人 = Convert.ToString(dr["法人代表"]).Replace("'", "''").Replace(" ", "");
                                公司注册地 = Convert.ToString(dr["注册地点"]).Replace("'", "''").Replace(" ", "");
                                注册资金 = Convert.ToString(dr["注册资金"]).Replace("'", "''").Replace(" ", "");
                                员工人数 = "";// Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                公司成立时间 = Convert.ToString(dr["成立时间"]).Replace("'", "''").Replace(" ", "");
                                年营业额 = Convert.ToString(dr["年营业额"]).Replace("'", "''").Replace(" ", "");
                                主要经营地点 = ""; //Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                主要市场 = Convert.ToString(dr["主要市场"]).Replace("'", "''").Replace(" ", "");
                                经营品牌 = "";//Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                主要客户 = Convert.ToString(dr["主要客户群"]).Replace("'", "''").Replace(" ", "");
                                管理体系认证 = Convert.ToString(dr["管理体系认证"]).Replace("'", "''").Replace(" ", "");
                                开户银行 = "";//Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                银行帐号 = "";// Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                是否提供OEM代加工 = Convert.ToString(dr["OEM服务"]).Replace("'", "''").Replace(" ", "");
                                研发部门人数 = Convert.ToString(dr["研发人数"]).Replace("'", "''").Replace(" ", "");
                                厂房面积 = Convert.ToString(dr["厂房面积"]).Replace("'", "''").Replace(" ", "");
                                质量控制 = Convert.ToString(dr["质量控制"]).Replace("'", "''").Replace(" ", "");
                                月产量 = Convert.ToString(dr["月产量"]).Replace("'", "''").Replace(" ", "");
                                联系人 = Convert.ToString(dr["联系人"]).Replace("'", "''").Replace(" ", "");
                                性别 = Convert.ToString(dr["联系人"]).Replace("'", "''").Replace(" ", "").Contains("女士") ? ("女") : ("男");
                                部门 = "销售部";
                                电话 = Convert.ToString(dr["电话"]).Replace("'", "''").Replace(" ", "");
                                移动电话 = Convert.ToString(dr["移动电话"]).Replace("'", "''").Replace(" ", "");
                                传真 = Convert.ToString(dr["传真"]).Replace("'", "''").Replace(" ", "");
                                地址 = Convert.ToString(dr["地址"]).Replace("'", "''").Replace(" ", "");
                                邮编 = Convert.ToString(dr["邮编"]).Replace("'", "''").Replace(" ", "");
                                邮箱 = Convert.ToString(dr["邮箱"]).Replace("'", "''").Replace(" ", "");
                                公司主页 = Convert.ToString(dr["网址"]).Replace("'", "''").Replace(" ", "");
                                // 信用等级参考 =  Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                年进口额 = Convert.ToString(dr["年出口额"]).Replace("'", "''").Replace(" ", "");
                                年出口额 = Convert.ToString(dr["年进口额"]).Replace("'", "''").Replace(" ", "");
                                诚信 = "";
                                Fid = "";
                                Sid = "";
                                Tid = "";
                                Province = "";
                                City = "";
                                Area = "";
                                tempSql = string.Format("insert into companys(C_ID ,userName ,公司名称,基本信息 ,主营产品或服务,主营行业,企业类型,经营模式,法人代表负责人,公司注册地,注册资金,员工人数,公司成立时间,年营业额,主要经营地点,主要市场,经营品牌,主要客户,管理体系认证,开户银行,银行帐号,是否提供OEM代加工,研发部门人数,厂房面积,质量控制,月产量,联系人,性别,部门,电话,移动电话,传真,地址,邮编,邮箱,公司主页,年进口额,年出口额) values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}','{21}','{22}','{23}','{24}','{25}','{26}','{27}','{28}','{29}','{30}','{31}','{32}','{33}','{34}','{35}','{36}','{37}')", C_ID, userName, 公司名称, 基本信息, 主营产品或服务, 主营行业, 企业类型, 经营模式, 法人代表负责人, 公司注册地, 注册资金, 员工人数, 公司成立时间, 年营业额, 主要经营地点, 主要市场, 经营品牌, 主要客户, 管理体系认证, 开户银行, 银行帐号, 是否提供OEM代加工, 研发部门人数, 厂房面积, 质量控制, 月产量, 联系人, 性别, 部门, 电话, 移动电话, 传真, 地址, 邮编, 邮箱, 公司主页, 年进口额, 年出口额);
                                sbSql.Append(tempSql).Append("\r\n");

                            }
                            WriteSqls(sbSql.ToString());
                            Application.DoEvents();
                            //this.richTextBox1.Text += sbSql.ToString() + "\r\n";

                            sbSql.Remove(0, sbSql.Length);

                        }
                    }
                    catch (Exception ex)
                    {
                        continue;
                        MessageBox.Show(ex.Message);
                    }


                }
                MessageBox.Show("success");

            }
            public void WriteSqls(params string[] sql)
            {
                if (sql.Length < 2)
                {
                    using (StreamWriter sw = new StreamWriter("D:\\sql.txt", true, System.Text.Encoding.GetEncoding("GB2312")))
                    {
                        sw.Write(sql[0]);
                        sw.Flush();
                    }
                }
                else if (sql[1] == "pro")
                {
                    using (StreamWriter sw = new StreamWriter("D:\\sqlContent.txt", true, System.Text.Encoding.GetEncoding("GB2312")))
                    {
                        sw.Write(sql[0]);
                        sw.Flush();
                    }
                }
                else if (sql[1] == "updateCity")
                {
                    using (StreamWriter sw = new StreamWriter("D:\\sqlupdateCity.txt", true, System.Text.Encoding.GetEncoding("GB2312")))
                    {
                        sw.Write(sql[0]);
                        sw.Flush();
                    }
                }
                else
                {
                    using (StreamWriter sw = new StreamWriter("D:\\sql" + sql[1] + ".txt", true, System.Text.Encoding.GetEncoding("GB2312")))
                    {
                        sw.Write(sql[0]);
                        sw.Flush();
                    }
                }

            }

            private void button1_Click(object sender, EventArgs e)
            {
                Dirs(this.FbdFiles.SelectedPath);
                ArrayList alsql = new ArrayList();
                string tempCompanyName = "";//公司名称
                string tempCode = "";//邮    编
                string tempAdd = "";//地    址
                string tempLinkMan = "";//联 系 人
                string tempTel = "";//联系电话
                string tempMobile = "";//手  机
                string tempFax = ""; //传  真
                string tempSql = "";


                //,标题,产品品牌,产品图,单价,发布时间,公司名称,供货总量,计量单位,缩略图,所在地
                string 标题 = "";
                string 产品描述 = "";
                string 产品品牌 = "";
                string 产品图 = "";
                string 单价 = "";
                string 发布时间 = "";
                string 公司名称 = "";
                string 供货总量 = "";
                string 计量单位 = "";
                string 所在地 = "";
                /*
                string 法人代表负责人 = "";
                string 公司注册地 = "";
                string 注册资金 = "";
                string 员工人数 = "";
                string 公司成立时间 = "";
                string 年营业额 = "";
                string 主要经营地点 = "";
                string 主要市场 = "";
                string 经营品牌 = "";
                string 主要客户 = "";
                string 管理体系认证 = "";
                string 开户银行 = "";
                string 银行帐号 = "";
                string 是否提供OEM代加工 = "";
                string 研发部门人数 = "";
                string 厂房面积 = "";
                string 质量控制 = "";
                string 月产量 = "";
                string 联系人 = "";
                string 性别 = "";
                string 部门 = "";
                string 电话 = "";
                string 移动电话 = "";
                string 传真 = "";
                string 地址 = "";
                string 邮编 = "";
                string 邮箱 = "";
                string 公司主页 = "";
                string 信用等级参考 = "";
                string 年进口额 = "";
                string 年出口额 = "";
                string 诚信 = "";
                string Fid = "";
                string Sid = "";
                string Tid = "";
                string Province = "";
                string City = "";
                string Area = "";*/


                /*    
                公司名称
                公司简介
                主营产品或服务
                主营行业:
                企业类型:
                经营模式
                法人代表
                注册地点
                注册资金
                成立时间
                年营业额
                主要市场
                主要客户群
                管理体系认证
                地址
                研发人数
                OEM服务
                厂房面积
                质量控制
                月产量
                联系人
                电话
                移动电话
                传真
                邮编
                邮箱
                网址
                年出口额
                年进口额
                */
                //,标题,产品品牌,产品图,单价,发布时间,公司名称,供货总量,计量单位,缩略图,所在地
                // 公司名称,产品名,数量,规格,品牌,产地,单位,详细信息,产品图
                int l = 0;
                foreach (string str in al)
                {
                    try
                    {
                        //this.richTextBox1.Text+=l.ToString();
                        DataTable dt = this.Db.GetTable(string.Format("select 公司名称,产品名,replace(replace(replace(cast(详细信息 as varchar(600)),char(10),''),char(13),''),char(9),'') 详细信息,replace(replace(replace(cast(单价 as varchar(600)),char(10),''),char(13),''),char(9),'')  单价,replace(replace(replace(cast(数量 as varchar(600)),char(10),''),char(13),''),char(9),'')  数量,replace(replace(replace(cast(规格 as varchar(600)),char(10),''),char(13),''),char(9),'')  规格,replace(replace(replace(cast(品牌 as varchar(600)),char(10),''),char(13),''),char(9),'') as 品牌,replace(replace(replace(cast(产地 as varchar(600)),char(10),''),char(13),''),char(9),'') 产地,replace(replace(replace(cast(单位 as varchar(600)),char(10),''),char(13),''),char(9),'') 单位,replace(replace(replace(cast(产品图 as varchar(600)),char(10),''),char(13),''),char(9),'') 产品图 from openrowset('Microsoft.Jet.OLEDB.4.0','{0}';'admin';'',Content)", str));
                        if (dt != null)
                        {
                            for (int i = 0; i < dt.Rows.Count; i++)
                            {
                                DataRow dr = dt.Rows[i];
                                //Gid = "";
                                // C_ID = "";
                                k++;
                                int model = 500000;
                                //userName = (model + k).ToString();
                                标题 = Convert.ToString(dr["产品名"]).Replace("'", "''").Replace(" ", "");
                                产品描述 = Convert.ToString(dr["详细信息"]).Replace("'", "''").Replace(" ", "");
                                产品品牌 = Convert.ToString(dr["品牌"]).Replace("'", "''").Replace(" ", "");
                                产品图 = Convert.ToString(dr["产品图"]).Replace("'", "''").Replace(" ", "");
                                单价 = Convert.ToString(dr["单价"]).Replace("'", "''").Replace(" ", "");
                                发布时间 = "";// Convert.ToString(dr["企业类型:"]).Replace("'", "''").Replace(" ", "");
                                公司名称 = Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ", "");
                                供货总量 = Convert.ToString(dr["数量"]).Replace("'", "''").Replace(" ", "");
                                计量单位 = Convert.ToString(dr["单位"]).Replace("'", "''").Replace(" ", "");
                                所在地 = Convert.ToString(dr["产地"]).Replace("'", "''").Replace(" ", "");
                                //insert into ProContent(标题,产品品牌,产品图,单价,公司名称,供货总量,计量单位,所在地) values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}')
                                tempSql = string.Format("insert into ProContent(标题,产品描述,产品品牌,产品图,单价,公司名称,供货总量,计量单位,所在地) values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}')", 标题, 产品描述, 产品品牌, 产品图, 单价, 公司名称, 供货总量, 计量单位, 所在地);
                                //alsql.Add(tempSql);
                                sbSql.Append(tempSql).Append("\r\n");
                                /* 公司成立时间 = Convert.ToString(dr["成立时间"]).Replace("'", "''").Replace(" ", "");
                                 年营业额 = Convert.ToString(dr["年营业额"]).Replace("'", "''").Replace(" ", "");
                                 主要经营地点 = ""; //Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                 主要市场 = Convert.ToString(dr["主要市场"]).Replace("'", "''").Replace(" ", "");
                                 经营品牌 = "";//Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                 主要客户 = Convert.ToString(dr["主要客户群"]).Replace("'", "''").Replace(" ", "");
                                 管理体系认证 = Convert.ToString(dr["管理体系认证"]).Replace("'", "''").Replace(" ", "");
                                 开户银行 = "";//Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                 银行帐号 = "";// Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                 是否提供OEM代加工 = Convert.ToString(dr["OEM服务"]).Replace("'", "''").Replace(" ", "");
                                 研发部门人数 = Convert.ToString(dr["研发人数"]).Replace("'", "''").Replace(" ", "");
                                 厂房面积 = Convert.ToString(dr["厂房面积"]).Replace("'", "''").Replace(" ", "");
                                 质量控制 = Convert.ToString(dr["质量控制"]).Replace("'", "''").Replace(" ", "");
                                 月产量 = Convert.ToString(dr["月产量"]).Replace("'", "''").Replace(" ", "");
                                 联系人 = Convert.ToString(dr["联系人"]).Replace("'", "''").Replace(" ", "");
                                 性别 = Convert.ToString(dr["联系人"]).Replace("'", "''").Replace(" ", "").Contains("女士") ? ("女") : ("男");
                                 部门 = "销售部";
                                 电话 = Convert.ToString(dr["电话"]).Replace("'", "''").Replace(" ", "");
                                 移动电话 = Convert.ToString(dr["移动电话"]).Replace("'", "''").Replace(" ", "");
                                 传真 = Convert.ToString(dr["传真"]).Replace("'", "''").Replace(" ", "");
                                 地址 = Convert.ToString(dr["地址"]).Replace("'", "''").Replace(" ", "");
                                 邮编 = Convert.ToString(dr["邮编"]).Replace("'", "''").Replace(" ", "");
                                 邮箱 = Convert.ToString(dr["邮箱"]).Replace("'", "''").Replace(" ", "");
                                 公司主页 = Convert.ToString(dr["网址"]).Replace("'", "''").Replace(" ", "");
                                 // 信用等级参考 =  Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                 年进口额 = Convert.ToString(dr["年出口额"]).Replace("'", "''").Replace(" ", "");
                                 年出口额 = Convert.ToString(dr["年进口额"]).Replace("'", "''").Replace(" ", "");
                                 诚信 = "";
                                 Fid = "";
                                 Sid = "";
                                 Tid = "";
                                 Province = "";
                                 City = "";
                                 Area = "";
                                 //tempCompanyName = Convert.ToString(dr["公司名称"]).Replace("'", "''").Replace(" ","");
                                 //tempAdd = Convert.ToString(dr["地址"]).Replace("'", "''");
                                 //tempLinkMan = Convert.ToString(dr["联系人"]).Replace("'", "''");
                                 //tempTel = Convert.ToString(dr["电话"]).Replace("'", "''");
                                 //tempMobile = Convert.ToString(dr["移动电话"]).Replace("'", "''");
                                 //tempFax = Convert.ToString(dr["传真"]).Replace("'", "''");*/


                            }
                            WriteSqls(sbSql.ToString(), "");
                            Application.DoEvents();
                            //this.richTextBox1.Text += sbSql.ToString() + "\r\n";

                            sbSql.Remove(0, sbSql.Length);

                        }
                    }
                    catch (Exception ex)
                    {
                        continue;
                        MessageBox.Show(ex.Message);
                    }


                }
                MessageBox.Show("success");

            }

            private void DataImport_Load(object sender, EventArgs e)
            {

            }

            private void richTextBox1_TextChanged(object sender, EventArgs e)
            {

            }

            private void btCompanys_Click(object sender, EventArgs e)
            {
                try
                {
                    SqlDataReader drd = null;
                    DataTable dtProvince = this.Db.GetTable("select province from province");
                    DataTable dtCity = this.Db.GetTable("select city,province from city b,province c where  b.father=c.provinceid order by province,city");
                    DataTable dtArea = this.Db.GetTable("select area,city,province from area a,city b,province c where a.father=b.cityid and b.father=c.provinceid order by province,city");

                    string Columns = this.Tbcolumn.Text.Trim();
                    string[] tempColumns = Columns.Split(',');
                    string tempColumn = "";
                    string tempArea = "";
                    string tempCity = "";
                    string tempProvince = "";
                    int tempCount = 0;
                 
                    StringBuilder tempSql = new StringBuilder("");
                    DataRow dr = null;
                    for (int i = 0; i < tempColumns.Length; i++)
                    {
                        //drd.Dispose();
                        //drd = null;
                       // MessageBox.Show(Columns + "select Gid,userName," + tempColumns[0] + "-" + tempColumns[1] + " from companys");
                        drd = this.Db.GetDataReader("select Gid,userName,[" + tempColumns[i] + "] from companys");
                      
                       // MessageBox.Show(tempColumns[i] + drd.Read().ToString());
                        while (drd.Read())
                        {
                            bool tempState = false;
                            //MessageBox.Show(Columns + "--" + tempColumn + "-");
                            //if (i == 0) { drd.Close(); break; }
                      
                            tempColumn = Convert.ToString(drd[tempColumns[i]]);
                          
                            for (int j = 0; j < dtArea.Rows.Count; j++)
                            {
                                dr = dtArea.Rows[j];
                                tempArea = Convert.ToString(dr["area"]);//.Replace("区", "").Replace("县", "");
                                if (tempColumn.Contains(tempArea))
                                {
                                    sbSql.AppendFormat("update companys set Province='{0}',city='{1}',area='{2}' where Gid={3} and area is null;\r\n", Convert.ToString(dr["Province"]), Convert.ToString(dr["City"]), Convert.ToString(dr["Area"]), Convert.ToString(drd["Gid"]));
                                    tempCount++;
                                    tempState = true;
                                }

                            }
                            if (!tempState)
                            {
                                for (int j = 0; j < dtCity.Rows.Count; j++)
                                {
                                    dr = dtCity.Rows[j];

                                    tempArea = Convert.ToString(dr["city"]).Replace("市", "");
                                    if (tempColumn.Contains(tempArea))
                                    {
                                        sbSql.AppendFormat("update companys set Province='{0}',city='{1}',area='市辖区' where Gid={2} and area is null;\r\n", Convert.ToString(dr["Province"]), Convert.ToString(dr["City"]), Convert.ToString(drd["Gid"]));
                                        tempCount++;
                                        tempState = true;
                                    }

                                }
                            }
                            if (!tempState)
                            {
                                for (int j = 0; j < dtProvince.Rows.Count; j++)
                                {
                                    dr = dtProvince.Rows[j];

                                    tempArea = Convert.ToString(dr["Province"]).Replace("省", "");
                                    if (tempColumn.Contains(tempArea))
                                    {
                                        sbSql.AppendFormat("update companys set Province='{0}',city='市辖区',area='市辖区' where Gid={1} and area is null;\r\n", Convert.ToString(dr["Province"]), Convert.ToString(drd["Gid"]));
                                        tempCount++;
                                        tempState = true;
                                    }

                                }
                            }
                            if (!tempState)
                            {
                                for (int j = 0; j < dtArea.Rows.Count; j++)
                                {
                                    dr = dtArea.Rows[j];

                                    tempArea = Convert.ToString(dr["area"]).Replace("镇", "").Replace("区", "").Replace("县", "");
                                    if (tempColumn.Contains(tempArea))
                                    {
                                        sbSql.AppendFormat("update companys set Province='{0}',city='{1}',area='{2}' where Gid={3} and area is null;\r\n", Convert.ToString(dr["Province"]), Convert.ToString(dr["City"]), Convert.ToString(dr["Area"]), Convert.ToString(drd["Gid"]));
                                        tempCount++;
                                        tempState = true;
                                    }

                                }
                            }
                            if (tempCount % 20000 == 0)
                            {
                                WriteSqls(sbSql.ToString(), "updateCity");
                                sbSql.Remove(0, sbSql.Length);
                            }
                            this.label2.Text = tempCount.ToString();
                            Application.DoEvents();
                           

                        }
                        drd.Close();
                        //
                    }
                    WriteSqls(sbSql.ToString(), "updateCity");
                }

                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }

            private void btCompanySort_Click(object sender, EventArgs e)
            {

                try
                {
                    SqlDataReader drd = null;
                    DataTable dtProvince = this.Db.GetTable("select Column_Name,Column_ID from Sort where Column_depth=1");
                    DataTable dtCity = this.Db.GetTable("select b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort b,Sort c where  b.Parent_ID=c.Column_ID and b.Column_Depth=2 order by FName,SName");
                    DataTable dtArea = this.Db.GetTable("select a.Column_Name TName,a.Column_ID Tid,b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort a,Sort b,Sort c where  a.Parent_ID=b.Column_ID and b.Parent_ID=c.Column_ID order by FName,SName");

                    string Columns = this.tbCompanySort.Text.Trim();
                    string[] tempColumns = Columns.Split(',');
                    string tempColumn = "";
                    string tempArea = "";
                    string tempCity = "";
                    string tempProvince = "";
                    int tempCount = 0;

                    StringBuilder tempSql = new StringBuilder("");
                    DataRow dr = null;
                    for (int i = 0; i < tempColumns.Length; i++)
                    {
                        //drd.Dispose();
                        //drd = null;
                        // MessageBox.Show(Columns + "select Gid,userName," + tempColumns[0] + "-" + tempColumns[1] + " from companys");
                        drd = this.Db.GetDataReader("select Gid,userName,[" + tempColumns[i] + "] from companys");
                        // MessageBox.Show(tempColumns[i] + drd.Read().ToString());
                        while (drd.Read())
                        {
                            bool tempState = false;
                            //MessageBox.Show(Columns + "--" + tempColumn + "-");
                            //if (i == 0) { drd.Close(); break; }

                            tempColumn = Convert.ToString(drd[tempColumns[i]]);

                            for (int j = 0; j < dtArea.Rows.Count; j++)
                            {
                                dr = dtArea.Rows[j];
                                tempArea = Convert.ToString(dr["TName"]);//.Replace("区", "").Replace("县", "");
                                if (tempColumn.Contains(tempArea) && tempArea!="其他")
                                {
                                    sbSql.AppendFormat("update companys set Fid='{0}',Sid='{1}',Tid='{2}' where Gid={3} and Fid is null;\r\n", Convert.ToString(dr["Fid"]), Convert.ToString(dr["Sid"]), Convert.ToString(dr["Tid"]), Convert.ToString(drd["Gid"]));
                                    tempCount++;
                                    tempState = true;
                                    break;
                                }

                            }
                            if (!tempState)
                            {
                                for (int j = 0; j < dtCity.Rows.Count; j++)
                                {
                                    dr = dtCity.Rows[j];

                                    tempArea = Convert.ToString(dr["SName"]);//.Replace("市", "");
                                    if (tempColumn.Contains(tempArea) && tempArea != "其他")
                                    {
                                        sbSql.AppendFormat("update companys set Fid='{0}',Sid='{1}',Tid='' where Gid={2} and Fid is null;\r\n", Convert.ToString(dr["Fid"]), Convert.ToString(dr["Sid"]), Convert.ToString(drd["Gid"]));
                                        tempCount++;
                                        tempState = true;
                                        break;
                                    }

                                }
                            }
                            if (!tempState)
                            {
                                for (int j = 0; j < dtProvince.Rows.Count; j++)
                                {
                                    dr = dtProvince.Rows[j];

                                    tempArea = Convert.ToString(dr["Column_Name"]);//.Replace("省", "");
                                    if (tempColumn.Contains(tempArea) && tempArea != "其他")
                                    {
                                        sbSql.AppendFormat("update companys set Fid='{0}',Sid='',Tid='' where Gid={1} and Fid is null;\r\n", Convert.ToString(dr["Column_ID"]), Convert.ToString(drd["Gid"]));
                                        tempCount++;
                                        tempState = true;
                                        break;
                                    }

                                }
                            }
                       
                            if (tempCount % 20000 == 0)
                            {
                                WriteSqls(sbSql.ToString(), "updateSort");
                                sbSql.Remove(0, sbSql.Length);
                            }
                            this.label2.Text = tempCount.ToString();
                            Application.DoEvents();


                        }
                        drd.Close();
                        //
                    }
                    WriteSqls(sbSql.ToString(), "updateSort");
                }

                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                MessageBox.Show("success!");
            }

            private void BtProductSort_Click(object sender, EventArgs e)
            {
                try
                {
                    SqlDataReader drd = null;
                    DataTable dtProvince = this.Db.GetTable("select Column_Name,Column_ID from Sort where Column_depth=1");
                    DataTable dtCity = this.Db.GetTable("select b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort b,Sort c where  b.Parent_ID=c.Column_ID and b.Column_Depth=2 order by FName,SName");
                    DataTable dtArea = this.Db.GetTable("select a.Column_Name TName,a.Column_ID Tid,b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort a,Sort b,Sort c where  a.Parent_ID=b.Column_ID and b.Parent_ID=c.Column_ID order by FName,SName");

                    string Columns = this.tbProductSort.Text.Trim();
                    string[] tempColumns = Columns.Split(',');
                    string tempColumn = "";
                    string tempArea = "";
                    string tempCity = "";
                    string tempProvince = "";
                    int tempCount = 0;

                    StringBuilder tempSql = new StringBuilder("");
                    DataRow dr = null;
                    for (int i = 0; i < tempColumns.Length; i++)
                    {
                        //drd.Dispose();
                        //drd = null;
                        // MessageBox.Show(Columns + "select Gid,userName," + tempColumns[0] + "-" + tempColumns[1] + " from companys");
                        drd = this.Db.GetDataReader("select Gid,[" + tempColumns[i] + "] from ProContent");
                        // MessageBox.Show(tempColumns[i] + drd.Read().ToString());
                        while (drd.Read())
                        {
                            bool tempState = false;
                            tempColumn = Convert.ToString(drd[tempColumns[i]]);
                            for (int j = 0; j < dtArea.Rows.Count; j++)
                            {
                                dr = dtArea.Rows[j];
                                tempArea = Convert.ToString(dr["TName"]);//.Replace("区", "").Replace("县", "");
                                if (tempColumn.Contains(tempArea) && tempArea != "其他")
                                {
                                    sbSql.AppendFormat("update ProContent set Fid='{0}',Sid='{1}',Tid='{2}' where Gid={3} and Fid is null;\r\n", Convert.ToString(dr["Fid"]), Convert.ToString(dr["Sid"]), Convert.ToString(dr["Tid"]), Convert.ToString(drd["Gid"]));
                                    tempCount++;
                                    tempState = true;
                                    break;
                                }

                            }
                            if (!tempState)
                            {
                                for (int j = 0; j < dtCity.Rows.Count; j++)
                                {
                                    dr = dtCity.Rows[j];

                                    tempArea = Convert.ToString(dr["SName"]);//.Replace("市", "");
                                    if (tempColumn.Contains(tempArea) && tempArea != "其他")
                                    {
                                        sbSql.AppendFormat("update ProContent set Fid='{0}',Sid='{1}',Tid='' where Gid={2} and Fid is null;\r\n", Convert.ToString(dr["Fid"]), Convert.ToString(dr["Sid"]), Convert.ToString(drd["Gid"]));
                                        tempCount++;
                                        tempState = true;
                                        break;
                                    }

                                }
                            }
                            if (!tempState)
                            {
                                for (int j = 0; j < dtProvince.Rows.Count; j++)
                                {
                                    dr = dtProvince.Rows[j];

                                    tempArea = Convert.ToString(dr["Column_Name"]);//.Replace("省", "");
                                    if (tempColumn.Contains(tempArea) && tempArea != "其他")
                                    {
                                        sbSql.AppendFormat("update ProContent set Fid='{0}',Sid='',Tid='' where Gid={1} and Fid is null;\r\n", Convert.ToString(dr["Column_ID"]), Convert.ToString(drd["Gid"]));
                                        tempCount++;
                                        tempState = true;
                                        break;
                                    }

                                }
                            }

                            if (tempCount % 20000 == 0)
                            {
                                WriteSqls(sbSql.ToString(), "updateProContentSort");
                                sbSql.Remove(0, sbSql.Length);
                            }
                            this.label2.Text = tempCount.ToString();
                            Application.DoEvents();


                        }
                        drd.Close();
                        //
                    }
                    WriteSqls(sbSql.ToString(), "updateProContentSort");
                }

                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                MessageBox.Show("success!");
            }
            public string replaceCharacter(string str)
            {
                string[] tempStr = new string[] { "经营部", "贸易部", "采购部", "销售中心", "办事处", "有限公司", "公司","代表处","经营部","采购中心","上海分公司","宁波分公司","上海办事处","营销中心","浙江办事处","宁波分公司","(销售部)","(业务部)","(经销商)" };
                foreach (string s in tempStr)
                {
                    str = str.Replace(s,"");
                }
                return str;
            }
            private void btProductCompany_Click(object sender, EventArgs e)
            {
                ///匹配产品公司
                try
                {
                    SqlDataReader drd = null;
                    //DataTable dtProvince = this.Db.GetTable("select C_ID,公司名称 from companys");
                    ////DataTable dtCity = this.Db.GetTable("select b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort b,Sort c where  b.Parent_ID=c.Column_ID and b.Column_Depth=2 order by FName,SName");
                    DataTable dtArea = this.Db.GetTable("select C_ID,公司名称 from companys");

                    string Columns = this.TbProductCompany.Text.Trim();
                    string[] tempColumns = Columns.Split(',');
                    string tempColumn = "";
                    string tempArea = "";
                    string tempCity = "";
                    string tempProvince = "";
                    int tempCount = 0;

                    StringBuilder tempSql = new StringBuilder("");
                    DataRow dr = null;
                    for (int i = 0; i < tempColumns.Length; i++)
                    {
                        //drd.Dispose();
                        //drd = null;
                        // MessageBox.Show(Columns + "select Gid,userName," + tempColumns[0] + "-" + tempColumns[1] + " from companys");
                        drd = this.Db.GetDataReader("select Gid,[" + tempColumns[i] + "] from ProContent");
               
                        while (drd.Read())
                        {
                            bool tempState = false;
                            tempColumn = Convert.ToString(drd[tempColumns[i]]);
                            for (int j = 0; j < dtArea.Rows.Count; j++)
                            {
                                dr = dtArea.Rows[j];
                                tempArea = replaceCharacter(Convert.ToString(dr["公司名称"]));//.Replace("区", "").Replace("县", "");
                                if (tempColumn.Contains(tempArea) && tempArea != "其他")
                                {
                                    sbSql.AppendFormat("update ProContent set C_ID='{0}' where Gid={1} and C_ID is null;\r\n", Convert.ToString(dr["C_ID"]), Convert.ToString(drd["Gid"]));
                                    tempCount++;
                                    tempState = true;
                                    break;
                                }
                              
                            }
                           

                            if (tempCount % 20000 == 0)
                            {
                                WriteSqls(sbSql.ToString(), "updateProContentC_ID");
                                sbSql.Remove(0, sbSql.Length);
                            }
                            this.label2.Text = tempCount.ToString();
                            Application.DoEvents();


                        }
                        drd.Close();
                        //
                    }
                    WriteSqls(sbSql.ToString(), "updateProContentC_ID");
                }

                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                MessageBox.Show("success!");
               
               
            }

            private void btCompanyProduct_Click(object sender, EventArgs e)
            {
                //将没有分类的产品用公司的分类表示
                this.Db.GetState("update ProContnt set Fid=(select Fid from companys where C_ID=ProContnt.C_ID),Sid=(select Sid from companys where C_ID=ProContnt.C_ID),Tid=(select Tid from companys where C_ID=ProContnt.C_ID) where Fid is null");
                MessageBox.Show("success!");
            }
        }
    }
    /*
     * select a.Column_Name TName,a.Column_ID Tid,b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort a,Sort b,Sort c where
      a.Parent_ID=b.Column_ID and b.Parent_ID=c.Column_ID order by FName,SName


    select b.Column_Name SName,b.Column_ID Sid,c.Column_Name FName,c.Column_ID Fid from Sort b,Sort c where
     b.Parent_ID=c.Column_ID and b.Column_Depth=2 order by FName,SName
     */

  • 相关阅读:
    什么是内部类
    "=="和equals方法究竟有什么区别?
    SWFUpload乱码问题的解决
    xStream转换XML、JSON
    Java文件下载
    笔记摘录
    Javascript 函数传参问题
    JQUERY伸缩导航
    ruby关于flip-flop理解上一个注意点
    ruby 使用Struct场景
  • 原文地址:https://www.cnblogs.com/bestsaler/p/1835647.html
Copyright © 2020-2023  润新知