winfrom下的 Excel 扫描 生成及上传

static public void chkfileList(string BBSDirPath)
        {
            BBSDirPath += "\\" + MySqlConn.getYearMonth() + "\\" + MySqlConn.getDay() + "";
            if (!File.Exists(BBSDirPath))
            {
                System.IO.Directory.CreateDirectory(BBSDirPath);
            }
            DataTable templist = new DataTable();
            string tempid = string.Empty;
//            for (int i = 0; i < tnames.Length; i++)
            for (int i = 0; i < 13; i++)//不包含价格库,价格库的日期是八位,不知道怎么取日期区间
            {
                if (i != 6)
                {
                    ia = i;

                    tempsql = "select top 1 * from " + tnames[i] + " order by " + times[i] + " desc";//取最大日期

                    templist = MsSqlConn.ExecuteDataMsSql(tempsql);
                    if (templist.Rows.Count > 0)
                    {
                        tempid = templist.Rows[0][times[i]].ToString();//取最大日期
                        cdate = MySqlConn.getCDate(tempid, times[i]);
                    }
                    templist = new DataTable();

                    //查对应的版块,是否有该日期的贴子
                    tempsql = "select * from " + frontword + "forum_thread  WHERE fid=" + tfid[ia] + " and subject like '" + cdate + "%'";
                    templist = MySqlConn.ExecuteDataMySql(tempsql);
                    if (templist.Rows.Count < 1)//如果不存在该日期的贴子才扫描和生成
                    {
                        templist = new DataTable();
                        tempsql = "select * from " + tnames[i] + " where " + times[i] + "=" + tempid;//取最大日期
                        templist = MsSqlConn.ExecuteDataMsSql(tempsql);

                        if (templist.Rows.Count > 0)
                        {
                            for (int j = 0; j < templist.Rows.Count; j++)
                            {
                                InsertTxt(BBSDirPath, templist.Rows[j]["code"].ToString(), templist.Rows[j][times[i]].ToString());
                            }
                        }
                    }
                }
            }
    

        }

        static public void InsertTxt(string BBSDirPath,string code,string stime)
        {
            if (fields[ia].IndexOf("ayear,")>-1)//年度数据
            {
                tempsql = "select " + fields[ia] + " from " + tnames[ia] + " where ayear<=" + stime + " and ayear>=" + (int.Parse(stime) - 10) + " and code='" + code + "'";
            }
            else//月度数据
            {
                tempsql = "select " + fields[ia] + " from " + tnames[ia] + " where ayearmon<=" + stime + " and ayearmon>=" + (int.Parse(stime) - 100) + " and code='" + code + "'";
            }


            //取数据

            DataTable datalist = new DataTable();
            datalist = MsSqlConn.ExecuteDataMsSql(tempsql);

            string filename = string.Empty;//上传后的文件名

            if (datalist.Rows.Count > 0)
            {
                string[] afilename = Export(BBSDirPath, datalist, stime);//生成excel
                if (afilename != null)
                {
                    CreatePost(BBSDirPath, afilename);
                }

            }
        }


        //        public string Export(DataTable dt, string xlsName, List<string> dataName)
        static public string[] Export(string fdir, DataTable datalist, string sdate)
        {


            //文件是否存在,重名则重命名
//            string fileName = DateTime.Now.ToString("yyyyMMddhhmmss") + DateTime.Now.Millisecond.ToString();
//            string fileName = tnames[j] + "_" + datalist.Rows[0]["code"].ToString() + sdate;

            string fileName = tnames[ia] + "_" + datalist.Rows[0]["code"].ToString();
            FileInfo ffile = new FileInfo(fdir + fileName + ".xls");
            if (ffile.Exists)
            {
                File.Delete(fdir + fileName + ".xls");
            }

            //创建excel文件
            XlsDocument xls = new XlsDocument();
            Thread.Sleep(10);
            xls.FileName = fileName;
            Worksheet sheet = xls.Workbook.Worksheets.Add("test");//Sheet名称
            Cells cells = sheet.Cells;
            Cell cell = cells.Add(1, 1, "资料来源: 数据圈(http://www.witland.com.cn) --免费经济数据 行业报告 地区报告 财经书籍 经济理论 自助资料交易");


            string ecode = datalist.Rows[0]["code"].ToString();
            string pecode = string.Empty;
            string pccode = string.Empty;
            if (ecode.Length > 4)
            {
                pecode = ecode.Substring(0, 4)+"0000";
            }

            //取父类中文指标名
            tempsql = "select * from " + tnames_index[ia] + "  WHERE code ='" + pecode + "'";
            DataTable pcodelist = new DataTable();
            pcodelist = MsSqlConn.ExecuteDataMsSql(tempsql);
            try
            {
                pccode = pcodelist.Rows[0]["cname"].ToString();
            }
            catch
            {
            }


            //取中文指标名
            string sql1 = "select * from tb_Application_index  WHERE code ='" + datalist.Rows[0]["code"].ToString() + "'";
            DataTable gbcode = new DataTable();
            gbcode = MsSqlConn.ExecuteDataMsSql(sql1);
            bool havecode = true;

            try
            {
                cell = cells.Add(3, 1, "中文指标:" + gbcode.Rows[0]["cname"].ToString());
                cell = cells.Add(4, 1, "指标单位:" + gbcode.Rows[0]["cunit"].ToString());
                cell = cells.Add(5, 1, "数据来源:" + gbcode.Rows[0]["source"].ToString());
                atfilename = cdate + "_" + gbcode.Rows[0]["cname"].ToString() + ".xls";
            }
            catch
            {
//                MessageBox.Show(tnames[j] + "文件里的指标" + datalist.Rows[0]["code"].ToString() + "在指标表里没有找到!");
                havecode = false;
            }
            if (havecode)
            {
                cell = cells.Add(6, 1, "数据分类:" + ctnames[ia]);
                cell = cells.Add(8, 1, "数据图表:");
                cell.Font.Bold = true;
                cell = cells.Add(9, 1, "Date");
                int syear = 0;
                int smonth = 0;
                if (fields[ia].IndexOf("ayear,") > -1)//年度数据
                {
                    syear = int.Parse(sdate);
                    int ssyear = syear - 10;
                    for (int ii0 = 0; ii0 < 11; ii0++)
                    {
                        cell = cells.Add(9, ii0 + 2, (ii0 + ssyear) + "年");
                    }
                }
                else
                {
                    syear = int.Parse(sdate.Substring(0, 4)) - 1;
                    smonth = int.Parse(sdate.Substring(4, 2));
                    for (int ii1 = 2; ii1 < 15; ii1++)
                    {

                        if (smonth == 13)
                        {
                            smonth = 1;
                            syear++;
                        }
                        cell = cells.Add(9, ii1, syear.ToString() + "年" + smonth.ToString() + "月");
                        smonth++;
                    }

                }
                cell = cells.Add(7, 1, "最新日期:" + cdate);
                int cm = 0;
                string sql = "";

                if (datalist.Rows.Count > 0)
                {

                    for (int ii = 0; ii < datalist.Rows.Count; ii++) //遍历表
                    {
                        cm = 0;
                        sql = "";
                        if (fields[ia].IndexOf("ayear,") > -1)//年度数据
                        {
                            switch (ia)
                            {
                                /*                             case 8:
                                                                 cell = cells.Add(7, 1, datalist.Rows[0]["code"].ToString());
                                                                 break;*/
                                case 9:
                                    sql = "select * from dim_city  WHERE citycode LIKE '%0000' order by citycode";
                                    DataTable citylist = new DataTable();
                                    citylist = MsSqlConn.ExecuteDataMsSql(sql);
                                    datarows = citylist.Rows.Count + 10;
                                    for (int ii2 = 0; ii2 < citylist.Rows.Count; ii2++)
                                    {
                                        cell = cells.Add(ii2 + 10, 1, citylist.Rows[ii2]["cityname"].ToString());
                                        if (citylist.Rows[ii2]["citycode"].ToString() == datalist.Rows[ii]["citycode"].ToString())
                                        {
                                            cm = int.Parse(datalist.Rows[ii]["ayear"].ToString()) - (int.Parse(sdate) - 11);
                                            if (datalist.Rows[ii]["data"].ToString().Length > 0)
                                            {
                                                cell = cells.Add(ii2 + 10, cm, double.Parse(datalist.Rows[ii]["data"].ToString()));
                                            }
                                        }
                                    }
                                    break;
                                default:
                                    //                                cell = cells.Add(6, ii + 2, datalist.Rows[ii]["ayear"].ToString());
                                    //                                cell = cells.Add(7, ii + 2, datalist.Rows[ii]["data"].ToString());
                                    cm = int.Parse(datalist.Rows[ii]["ayear"].ToString()) - (int.Parse(sdate) - 11) + 2;
                                    if (datalist.Rows[ii]["data"].ToString().Length > 0)
                                    {
                                        cell = cells.Add(10, cm - 1, double.Parse(datalist.Rows[ii]["data"].ToString()));
                                    }
                                    break;
                            }
                        }
                        else
                        {
                            switch (ia)
                            {
                                case 0://tb_region_month
                                    sql = "select * from dim_city  WHERE citycode LIKE '%0000' order by citycode";
                                    DataTable citylist1 = new DataTable();
                                    citylist1 = MsSqlConn.ExecuteDataMsSql(sql);
                                    datarows = citylist1.Rows.Count + 10;
                                    for (int ii2 = 0; ii2 < citylist1.Rows.Count; ii2++)
                                    {
                                        cell = cells.Add(ii2 + 10, 1, citylist1.Rows[ii2]["cityname"].ToString());
                                        if (citylist1.Rows[ii2]["citycode"].ToString() == datalist.Rows[ii]["citycode"].ToString())
                                        {
                                            //    MessageBox.Show(int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) + "-" + (int.Parse(sdate) - 100) + "=====" + (2+ int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) - (int.Parse(sdate) - 100)));
                                            cm = int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) - (int.Parse(sdate) - 100);
                                            if (cm > 20)
                                            {
                                                cm = cm - 100 + 12;
                                            }
                                            if (datalist.Rows[ii]["data"].ToString().Length > 0)
                                            {
                                                cell = cells.Add(ii2 + 10, 2 + cm, double.Parse(datalist.Rows[ii]["data"].ToString()));
                                            }
                                        }
                                    }
                                    break;
                                //                             case 1://tb_hongg_month
                                //                                 break;
                                case 4://tb_global_month
                                    sql = "select * from tb_global_month_country order by countryID";
                                    DataTable citylist2 = new DataTable();
                                    citylist2 = MsSqlConn.ExecuteDataMsSql(sql);
                                    datarows = citylist2.Rows.Count + 10;
                                    for (int ii2 = 0; ii2 < citylist2.Rows.Count; ii2++)
                                    {
                                        cell = cells.Add(ii2 + 10, 1, citylist2.Rows[ii2]["Country"].ToString());
                                        if (citylist2.Rows[ii2]["countryID"].ToString() == datalist.Rows[ii]["country"].ToString())
                                        {
                                            //    MessageBox.Show(int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) + "-" + (int.Parse(sdate) - 100) + "=====" + (2+ int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) - (int.Parse(sdate) - 100)));
                                            cm = int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) - (int.Parse(sdate) - 100);
                                            if (cm > 20)
                                            {
                                                cm = cm - 100 + 12;
                                            }
                                            if (datalist.Rows[ii]["data"].ToString().Length > 0)
                                            {
                                                cell = cells.Add(ii2 + 10, 2 + cm, double.Parse(datalist.Rows[ii]["data"].ToString()));
                                            }
                                        }
                                    }
                                    break;
                                case 5://tb_hangye_product
                                    sql = "select * from dim_city  WHERE citycode LIKE '%0000' order by citycode";
                                    DataTable citylist3 = new DataTable();
                                    citylist3 = MsSqlConn.ExecuteDataMsSql(sql);
                                    datarows = citylist3.Rows.Count + 10;
                                    for (int ii2 = 0; ii2 < citylist3.Rows.Count; ii2++)
                                    {
                                        cell = cells.Add(ii2 + 10, 1, citylist3.Rows[ii2]["cityname"].ToString());
                                        if (citylist3.Rows[ii2]["citycode"].ToString() == datalist.Rows[ii]["citycode"].ToString())
                                        {
                                            //    MessageBox.Show(int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) + "-" + (int.Parse(sdate) - 100) + "=====" + (2+ int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) - (int.Parse(sdate) - 100)));
                                            cm = int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) - (int.Parse(sdate) - 100);
                                            if (cm > 20)
                                            {
                                                cm = cm - 100 + 12;
                                            }
                                            if (datalist.Rows[ii]["data"].ToString().Length > 0)
                                            {
                                                cell = cells.Add(ii2 + 10, 2 + cm, double.Parse(datalist.Rows[ii]["data"].ToString()));
                                            }
                                        }
                                    }
                                    break;
                                case 6://tb_citydata
                                    sql = "select * from dim_city  WHERE citycode in(SELECT citycode FROM tb_citydata GROUP BY citycode) order by citycode";
                                    DataTable citylist4 = new DataTable();
                                    citylist4 = MsSqlConn.ExecuteDataMsSql(sql);
                                    datarows = citylist4.Rows.Count + 10;
                                    for (int ii2 = 0; ii2 < citylist4.Rows.Count; ii2++)
                                    {
                                        cell = cells.Add(ii2 + 10, 1, citylist4.Rows[ii2]["cityname"].ToString());
                                        if (citylist4.Rows[ii2]["citycode"].ToString() == datalist.Rows[ii]["citycode"].ToString())
                                        {
                                            //    MessageBox.Show(int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) + "-" + (int.Parse(sdate) - 100) + "=====" + (2+ int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) - (int.Parse(sdate) - 100)));
                                            cm = int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) - (int.Parse(sdate) - 100);
                                            if (cm > 20)
                                            {
                                                cm = cm - 100 + 12;
                                            }
                                            if (datalist.Rows[ii]["data"].ToString().Length > 0)
                                            {
                                                cell = cells.Add(ii2 + 10, 2 + cm, double.Parse(datalist.Rows[ii]["data"].ToString()));
                                            }
                                        }
                                    }
                                    break;
                                default:
                                    //                                cell = cells.Add(6, ii + 2, datalist.Rows[ii]["ayearmon"].ToString().Substring(0, 4) + "-" + datalist.Rows[ii]["ayearmon"].ToString().Substring(4, 2));
                                    //                                cell = cells.Add(7, ii + 2, datalist.Rows[ii]["data"].ToString());
                                    cm = int.Parse(datalist.Rows[ii]["ayearmon"].ToString()) - (int.Parse(sdate) - 100);
                                    if (cm > 20)
                                    {
                                        cm = cm - 100 + 12;
                                    }
                                    if (datalist.Rows[ii]["data"].ToString().Length > 0)
                                    {
                                        cell = cells.Add(10, 2 + cm, double.Parse(datalist.Rows[ii]["data"].ToString()));
                                    }
                                    break;
                            }
                        }
                    }
                }
                else
                {//not resultdata
                    MessageBox.Show(ia.ToString());
                }
                cell = cells.Add(datarows + 3, 1, "注:1.如需历史数据或更多定制数据,请在数据圈论坛、资料交换区/悬赏-求助-找资料板块(http://www.witland.com.cn/forum.php?mod=forumdisplay&fid=170)提交需求");
                cell = cells.Add(datarows + 4, 1, "  2.提交需求请注明所需要的详细指标列表 时间 地区。");
                cell = cells.Add(datarows + 5, 1, "  3.更多帮助请联系客户服务qq:1283044626");
                cell = cells.Add(datarows + 6, 2, "MSN:witland@live.com");
                cell = cells.Add(datarows + 7, 2, "Gtalk:jingjiquan@gmail.com");
                cell = cells.Add(datarows + 8, 2, "qq群:95402828");
                cell = cells.Add(datarows + 9, 2, "MSN群:加group297424@msnzone.cn为好友");

                //            cell = cells.Add(8, 1, "如需更多定制数据,可向如下地址提交需求:http://demand.willand.com.cn");
                //            cell.Font.ColorIndex = 5;
                //            cell = cells.Add(9, 1, "塔塔信息咨询有限公司版权所有,未经允许,严禁转载");
                string file = fdir;


                FileInfo ffile1 = new FileInfo(fdir + "\\" + fileName+".xls");
                if (ffile1.Exists)
                {
                    File.Delete(fdir + "\\" + fileName + ".xls");
                }
                xls.Save(file);
                string[] afileName = { gbcode.Rows[0]["cname"].ToString(), fileName + ".xls", datalist.Rows[0]["code"].ToString(), pccode };
                return afileName;
            }
            else { return null; }
        }

        //把excel文件拷贝到论坛目录,并发新贴
        //private void CreateDoc(string sourcepath, string targetpath, DirectoryInfo dir, DirectoryInfo item, DirectoryInfo items, FileInfo doc)
        static public void CreatePost(string bbspath, string[] afileName)
        {
            FileInfo doc = new FileInfo(bbspath +"\\"+ afileName[1]);
            try
            {
                long docsezie = doc.Length;//附件大小
                string doctype = "application/octet-stream";//附件类型
                //查询用户表用户名
                string username = MySqlConn.GetMySqlData(frontword+"common_member", "uid", 10);
//                string post_subject = "【" + ctnames[ia] + "】-" + afileName[0];//贴子名称
                string post_subject = afileName[0];//贴子名称
                string post_message = cdate + "-" + afileName[3]+"-" + post_subject;
                string ip = MySqlConn.getIP();
                long ltime = MySqlConn.ConvertDateTimeInt(DateTime.Now);//获取时间的integer
                //绝对路径
                string juepath = MySqlConn.getYearMonth() + "/" + MySqlConn.getDay() + "/" + afileName[1];


/*判断贴子是否存在,如果存在则更新,否则插入*/
//                int thid = MySqlConn.GetMySqlData(frontword + "forum_thread", "fid", "subject", tfid[ia], post_subject);
                int thid = 0;
                tempsql = "select * from " + frontword + "forum_thread  WHERE fid=" + tfid[ia] + " and subject like '%" + post_subject + "'";
                DataTable thlist = new DataTable();
                thlist = MySqlConn.ExecuteDataMySql(tempsql);
                if (thlist.Rows.Count > 0)
                {
                    thid = int.Parse(thlist.Rows[0]["tid"].ToString());
                }

                if (thid != 0)
                {
                    //查询论坛信息回复表id
//                    int Pid = MySqlConn.GetMySqlData(frontword + "forum_post", "fid", "tid", "subject", tfid[ia], thid, post_message);
                    int Pid = 0;
                    tempsql = "select * from " + frontword + "forum_post  WHERE fid=" + tfid[ia] + " and tid=" + thid + " and subject like '" + post_subject + "%'";
                    DataTable pidlist = new DataTable();
                    pidlist = MySqlConn.ExecuteDataMySql(tempsql);
                    if (pidlist.Rows.Count > 0)
                    {
                        Pid = int.Parse(pidlist.Rows[0]["pid"].ToString());
                    }

                    tempsql = "update " + frontword + "forum_thread set subject='" + post_message + "',dateline=" + ltime + " where tid=" + thid;
                    MySqlConn.ExecuteMySql(tempsql);

                    //更新评论回复信息表
                    tempsql = "update " + frontword + "forum_post set message='" + post_message + "',subject='" + post_message + "',attachment=1,dateline=" + ltime + " where pid=" + Pid + "";
                    MySqlConn.ExecuteMySql(tempsql);

                    //取附件id
                    tempsql = "select * from " + frontword + "forum_attachment  WHERE pid="+Pid;
                    DataTable aidlist = new DataTable();
                    aidlist = MySqlConn.ExecuteDataMySql(tempsql);

                    if (aidlist.Rows.Count > 0)
                    {
                        if (aidlist.Rows.Count < 2)
                        {
                            //更新附件表
                            tempsql = "update " + frontword + "forum_attachment set dateline=" + ltime + ",filesize=" + docsezie + ",filetype='" + doctype + "',filename='" + atfilename + "',attachment='" + juepath + "' where aid=" + aidlist.Rows[0]["aid"].ToString();
                            MySqlConn.ExecuteMySql(tempsql);
                        }
                        else
                        {
                            tempsql = "delete from  " + frontword + "forum_attachment  where pid=" + Pid;
                            MySqlConn.ExecuteDeleteMySql(tempsql);
                            tempsql = "insert into " + frontword + "forum_attachment(tid,pid,filename,uid,attachment,dateline,Filetype,Filesize) values(" + thid + "," + Pid + ",'" + atfilename + "',10,'" + juepath + "','" + ltime + "','" + doctype + "'," + docsezie + ")";//插入附件表
                            MySqlConn.ExecuteMySql(tempsql);
                        }
                    }
                    else
                    {
//                        string sqlthree = "insert into " + frontword + "forum_attachment_a(tid,pid,filename) values(" + thid + "," + Pid + ",'" + afileName[1] + "')";
//                        if (MySqlConn.ExecuteMySql(sqlthree))//插入附件影子表并成功
//                        {
                            tempsql = "delete from  " + frontword + "forum_attachment  where pid=" + Pid;
                            MySqlConn.ExecuteDeleteMySql(tempsql);
                            tempsql = "insert into " + frontword + "forum_attachment(tid,pid,filename,uid,attachment,dateline,Filetype,Filesize) values(" + thid + "," + Pid + ",'" + atfilename + "',10,'" + juepath + "','" + ltime + "','" + doctype + "'," + docsezie + ")";//插入附件表
                            MySqlConn.ExecuteMySql(tempsql);
//                        }

                    }
                }else{
/*不存在则插入帖子*/
                    string sqlone = "insert into  " + frontword + "thread_a(fid,authorid,subject,Monday) values(" + tfid[ia] + ",10,'" + post_message + "','" + MySqlConn.getMonth() + MySqlConn.getDay() + "')";

                    if (MySqlConn.ExecuteMySql(sqlone))//插入影子表,并成功
                    {//插入主贴表
                        string sqlz = "insert into  " + frontword + "forum_thread(fid,author,authorid,subject,dateline,lastpost,lastposter,status,attachment) values(" + tfid[ia] + ",'" + username + "',10,'" + post_message + "'," + ltime + "," + ltime + ",'" + username + "',32,1)"; //插入对应主题
                        //查询
                        MySqlConn.ExecuteMySql(sqlz);
                    }

                    //查询帖子id(根据论坛id和主贴标题)
                    int Tid = MySqlConn.GetMySqlData(frontword + "forum_thread", "fid", "subject", tfid[ia], post_message);
                    if (Tid != 0)
                    {
                        //插入评论回复信息表
                        string sqltwo = "insert into " + frontword + "forum_post_a(fid,tid,authorid,subject)  values (" + tfid[ia] + "," + Tid + ",10,'" + post_message + "')";
                        if (MySqlConn.ExecuteMySql(sqltwo))//插入影子表,并成功
                        {
                            string sqlc = "insert into " + frontword + "forum_post (fid,tid,author,authorid,subject,dateline,message,useip,attachment,usesig,first) values(" + tfid[ia] + "," + Tid + ",'" + username + "',10,'" + post_message + "'," + ltime + ",'" + post_message + "','" + ip + "',1,1,1) ";
                            MySqlConn.ExecuteMySql(sqlc);
                        }

                        //  MessageBox.Show("插入论坛回复信息表" + sqlc);
                        //查询论坛信息回复表id
                        int Pid = MySqlConn.GetMySqlData(frontword + "forum_post", "fid", "tid", "subject", tfid[ia], Tid, post_message);
                        //更新贴子的sequens表
                        if (Pid > 0)
                        {
                            string inspid = "insert into " + frontword + "forum_post_tableid(pid)  values(" + Pid + ")";
                            MySqlConn.ExecuteMySql(inspid);
                        }

//                        string sqlthree = "insert into " + frontword + "forum_attachment_a(tid,pid,filename) values(" + Tid + "," + Pid + ",'" + afileName[1] + "')";
//                        if (MySqlConn.ExecuteMySql(sqlthree))//插入附件影子表并成功
//                        {

                        //取附件id
                        tempsql = "select * from " + frontword + "forum_attachment  WHERE pid=" + Pid;
                        DataTable aidlist = new DataTable();
                        aidlist = MsSqlConn.ExecuteDataMsSql(tempsql);
                        if (aidlist.Rows.Count > 0)
                        {
                            if (aidlist.Rows.Count < 2)
                            {
                                //更新附件表
                                tempsql = "update " + frontword + "forum_attachment set dateline=" + ltime + ",filesize=" + docsezie + ",filetype='" + doctype + "',filename='" + atfilename + "',attachment='" + juepath + "' where aid=" + aidlist.Rows[0]["aid"].ToString();
                                MySqlConn.ExecuteMySql(tempsql);
                            }
                            else
                            {
                                tempsql = "delete from  " + frontword + "forum_attachment  where pid=" + Pid;
                                MySqlConn.ExecuteDeleteMySql(tempsql);
                                tempsql = "insert into " + frontword + "forum_attachment(tid,pid,filename,uid,attachment,dateline,Filetype,Filesize) values(" + Tid + "," + Pid + ",'" + atfilename + "',10,'" + juepath + "','" + ltime + "','" + doctype + "'," + docsezie + ")";//插入附件表
                                MySqlConn.ExecuteMySql(tempsql);
                            }
                        }
                        else
                        {
                            //                        string sqlthree = "insert into " + frontword + "forum_attachment_a(tid,pid,filename) values(" + Tid + "," + Pid + ",'" + afileName[1] + "')";
                            //                        if (MySqlConn.ExecuteMySql(sqlthree))//插入附件影子表并成功
                            //                        {
                            tempsql = "delete from  " + frontword + "forum_attachment  where pid=" + Pid;
                            MySqlConn.ExecuteDeleteMySql(tempsql);
                            tempsql = "insert into " + frontword + "forum_attachment(tid,pid,filename,uid,attachment,dateline,Filetype,Filesize) values(" + Tid + "," + Pid + ",'" + atfilename + "',10,'" + juepath + "','" + ltime + "','" + doctype + "'," + docsezie + ")";//插入附件表
                            MySqlConn.ExecuteMySql(tempsql);
                            //                        }

                        }

//                            string sqlcode = "insert into " + frontword + "forum_attachment(tid,pid,filename,uid,attachment,dateline,Filetype,Filesize) values(" + Tid + "," + Pid + ",'" + afileName[1] + "',10,'" + juepath + "','" + ltime + "','" + doctype + "'," + docsezie + ")";//插入附件表
//                            MySqlConn.ExecuteMySql(sqlcode);
//                        }
                        //更新帖子的记录数
                        string sqlcount = "update " + frontword + "forum_forum set todayposts=(SELECT count(*) FROM " + frontword + "forum_thread WHERE DATE_FORMAT(FROM_UNIXTIME(dateline),'%Y-%m-%d') = DATE_FORMAT(NOW(),'%Y-%m-%d') and fid=" + tfid[ia] + ") where fid=" + tfid[ia] + "";
                        MySqlConn.ExecuteMySql(sqlcount);
                    }
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                //return 1;
            }

            //messger = "";
            //return 0;
        }


        static String[] tnames = {                     "tb_region_month",//0
                                                        "tb_hongg_month",//1
                                                        "tb_jinrong_month",//2
                                                        "tb_waimao_month",//3
                                                        "tb_global_month",//4
                                                        "tb_hangye_product",//5
                                                        "tb_citydata",//6
                                                        "tb_hangye_output",//7
                                                        "tb_hongg_year",//8
                                                        "tb_region_year",//9
                                                        "tb_jinrong_year",//10
                                                        "tb_waimao_year",//11
                                                        "tb_hangye_year",
                                "tb_global",//13
                                "tb_price_week",//14
                                "tb_price_xun",//15
                                "tb_price_month"};//16

        static String[] fields = {                     "ayearmon,code,citycode,data",//0
                                                        "ayearmon,province,code,data",//1
                                                        "ayearmon,code,data",//2
                                                        "ayearmon,code,data",//3
                                                        "ayearmon,code,country,data",//4
                                                        "ayearmon,code,citycode,data",//5
                                                        "ayearmon,code,citycode,data",//6
                                                        "ayearmon,code,data",//7
                                                        "ayear,province,code,data",//8
                                                        "ayear,code,citycode,data",//9
                                                        "ayear,code,data",//10
                                                        "ayear,code,data",//11
                                                        "ayear,code,data",//13
                                "time,code,data",//14
                                "time,code,data",//15
                                "time,code,data"};//16

        static String[] times = {                     "ayearmon",//0
                                                        "ayearmon",//1
                                                        "ayearmon",//2
                                                        "ayearmon",//3
                                                        "ayearmon",//4
                                                        "ayearmon",//5
                                                        "ayearmon",//6
                                                        "ayearmon",//7
                                                        "ayear",//8
                                                        "ayear",//9
                                                        "ayear",//10
                                                        "ayear",//11
                                                        "ayear",//12
                                "ayearmon",//13
                                "time",//14
                                "time",//15
                                "time"};//16

        static String[] ctnames = {                    "地区月度数据",//0
                                                        "宏观月度数据",//1
                                                        "金融月度数据月度数据",//2
                                                        "外贸月度数据",//3
                                                        "世界经济月度数据",//4
                                                        "工业产品数据",//5
                                                        "城市月度数据",//6
                                                        "工业产业及销售数据",//7
                                                        "宏观年度数据",//8
                                                        "地区年度数据",//9
                                                        "金融年度数据",//10
                                                        "外贸年度数据",//11
                                                        "工业年度数据",//12
                                                        "世纪经济年度数据",//13
                                                        "价格周数据",//14
                                                        "价格旬数据",//15
                                                        "价格月数据"};//16

                static int[] tfid = {                    150,//0
                                                                146,//1
                                                                142,//2
                                                                143,//3
                                                                138,//4
                                                                181,//5
                                                                145,//6
                                                                148,//7
                                                                161,//8
                                                                162,//9
                                                                182,//10
                                                                179,//11
                                                                157};//12
                /*                static int[] tfid = {                    119,//0
                                                                                        119,//1
                                                                                        119,//2
                                                                                        119,//3
                                                                                        119,//4
                                                                                        119,//5
                                                                                        119,//6
                                                                                        119,//7
                                                                                        119,//8
                                                                                        119,//9
                                                                                        119,//10
                                                                                        119,//11
                                                                                        119};//12*/
                static String[] tnames_index = {        "tb_region_month_index",//0
                                                        "tb_hongg_month_all_index",//1
                                                        "tb_jinrong_month_index",//2
                                                        "tb_waimao_month_index",//3
                                                        "tb_global_month_index",//4
                                                        "tb_hangye_product_index",//5
                                                        "tb_citydata_index",//6
                                                        "tb_hangye_output_index",//7
                                                        "tb_hongg_year_all_index",//8
                                                        "tb_region_year_index",//9
                                                        "tb_jinrong_year_index",//10
                                                        "tb_waimao_year_index",//11
                                                        "tb_hangye_year_index",
                                "tb_global_index",//13
                                "tb_price_week_index",//14
                                "tb_price_xun_index",//15
                                "tb_price_month_index"};//16
       
        static int ia = -1;
        static string cdate = string.Empty;//此次数据的中文时间
        static string tempsql = string.Empty;
        static string frontword = "pre_";//表前缀
        static string atfilename = "";
        static int datarows = 1;
    }

posted on 2011-03-16 10:50  树欲静兮  阅读(277)  评论(0编辑  收藏  举报