using SQLData; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Data.OleDb; using System.IO; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using SiteCore; public partial class Ehr_ImportEmployee : BasePage { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { } } private bool checkFile(HttpPostedFile postedFile) { if (postedFile != null && postedFile.ContentLength > 0) { string fileName = postedFile.FileName; if (fileName.IndexOf(".xls", StringComparison.OrdinalIgnoreCase) == -1) return false; string fileType = postedFile.ContentType; if (fileType == "application/vnd.ms-excel" || fileType == "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") return true; } return false; } protected void btnSure_Click(object sender, EventArgs e) { HttpPostedFile postedFile = xlsFile.PostedFile; if (!checkFile(postedFile)) { litResult.Text = "选择上传的文件格式不正确,无法上传,格式是xls或xlsx!"; return; } string exted = Path.GetExtension(postedFile.FileName); string filePath = ""; if (!Directory.Exists(filePath)) { Directory.CreateDirectory(filePath); } string file = filePath+"\\"+DateTime.Now.ToFileTime() + exted; postedFile.SaveAs(file); if (File.Exists(file)) { DataSet ds = ExcelDataSource(file); DataTable dt = ds.Tables[0]; dt.Rows.RemoveAt(0); StringBuilder str = new StringBuilder(); str.Append(" declare @userId int ;"); foreach (DataRow dr in dt.Rows) { string personName = dr[0].ToString().Trim(); if (personName == "") continue; string mobile = dr[1].ToString().Trim(); string mobile2 = dr[2].ToString().Trim(); string zw = dr[3].ToString().Trim(); string sex = dr[4].ToString().Trim(); string jointime = dr[5].ToString().Trim(); //不存在则新增会员 str.Append(" insert into ce_erpperson(name,mobile,mobile2,sex,CreateTime)"); str.AppendFormat(" Values('{0}','{1}','{2}','{3}',getdate()) ;select @userId=SCOPE_IDENTITY() ;", personName, mobile, mobile2, sex); str.AppendFormat(" insert into ce_erppersonpost(personid,orgid,postid) select @userId,orgid,id from ce_erppost where name='{0}' ;", zw); } if (str.Length > 0) { DbHelper.DbConn.ExecuteNonQuery(str.ToString()); litResult.Text = "导入成功!"; ShowResult("导入成功", "closeFn();"); } } } public static DataSet ExcelDataSource(string filepath) { string strConn = "Provider=Microsoft.ACE.OleDb.12.0;Data Source=" + filepath + ";Extended Properties='Excel 12.0;HDR=yes;IMEX=1;'"; //string strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties=Excel 8.0;"; using (OleDbConnection conn = new OleDbConnection(strConn)) { conn.Open(); DataTable sheetNames = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" }); ArrayList al = new ArrayList(); foreach (DataRow dr in sheetNames.Rows) { al.Add(dr[2]); } OleDbDataAdapter oada = new OleDbDataAdapter("select * from [" + al[0] + "]", strConn); DataSet ds = new DataSet(); oada.Fill(ds); conn.Close(); return ds; } } }